/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
"use strict";

var $protobuf = require("protobufjs/light");

var $root = ($protobuf.roots["default"] || ($protobuf.roots["default"] = new $protobuf.Root()))
.setOptions({
  go_package: ".;pb"
})
.addJSON({
  DBAcademy: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      level: {
        keyType: "int32",
        type: "bool",
        id: 2
      },
      hero: {
        keyType: "string",
        type: "bool",
        id: 3
      }
    }
  },
  AcademyInfoReq: {
    fields: {}
  },
  AcademyInfoResp: {
    fields: {
      info: {
        type: "DBAcademy",
        id: 1
      }
    }
  },
  AcademyChallengeReq: {
    fields: {
      level: {
        type: "int32",
        id: 1
      }
    }
  },
  AcademyChallengeResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      level: {
        type: "int32",
        id: 2
      },
      info: {
        type: "BattleInfo",
        id: 3
      }
    }
  },
  AcademyReceiveReq: {
    fields: {
      level: {
        type: "int32",
        id: 1
      },
      group: {
        type: "int32",
        id: 2
      },
      report: {
        type: "BattleReport",
        id: 3
      }
    }
  },
  AcademyReceiveResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  AcademyTeachingReq: {
    fields: {
      heroId: {
        type: "string",
        id: 1
      }
    }
  },
  AcademyTeachingResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      heroId: {
        type: "string",
        id: 2
      },
      info: {
        type: "BattleInfo",
        id: 3
      }
    }
  },
  AcademyTeachingReceiveReq: {
    fields: {
      heroId: {
        type: "string",
        id: 1
      },
      report: {
        type: "BattleReport",
        id: 2
      }
    }
  },
  AcademyTeachingReceiveResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  LineUp: {
    fields: {
      cid: {
        type: "string",
        id: 1
      },
      star: {
        type: "int32",
        id: 2
      },
      lv: {
        type: "int32",
        id: 3
      }
    }
  },
  BattleFormation: {
    fields: {
      leadpos: {
        type: "int32",
        id: 1
      },
      format: {
        rule: "repeated",
        type: "string",
        id: 2
      },
      friendformat: {
        rule: "repeated",
        type: "string",
        id: 3
      }
    }
  },
  BattleEVEReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      format: {
        type: "BattleFormation",
        id: 3
      },
      sysformat: {
        rule: "repeated",
        type: "int32",
        id: 4
      },
      backupformat: {
        rule: "repeated",
        type: "int32",
        id: 5
      },
      buleformat: {
        rule: "repeated",
        type: "int32",
        id: 6
      }
    }
  },
  BattlePVEReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      format: {
        type: "BattleFormation",
        id: 4
      },
      mformat: {
        rule: "repeated",
        type: "int32",
        id: 5
      }
    }
  },
  PVPFormation: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      leadpos: {
        type: "int32",
        id: 2
      },
      format: {
        rule: "repeated",
        type: "DBHero",
        id: 3
      }
    }
  },
  BattlePVPReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      redformat: {
        type: "PVPFormation",
        id: 4
      },
      buleformat: {
        type: "PVPFormation",
        id: 5
      }
    }
  },
  BattleRTPVPReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      redCompId: {
        type: "string",
        id: 6
      },
      redformat: {
        rule: "repeated",
        type: "BattleFormation",
        id: 7
      },
      blueCompId: {
        type: "string",
        id: 8
      },
      bulefformat: {
        rule: "repeated",
        type: "BattleFormation",
        id: 9
      }
    }
  },
  BattleLPVEReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      scene: {
        type: "string",
        id: 3
      },
      format: {
        type: "BattleFormation",
        id: 4
      },
      monsterleadpos: {
        type: "int32",
        id: 5
      },
      monsters: {
        rule: "repeated",
        type: "BattleRole",
        id: 6
      }
    }
  },
  BattlePVBReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      format: {
        rule: "repeated",
        type: "BattleFormation",
        id: 4
      },
      mformat: {
        rule: "repeated",
        type: "int32",
        id: 5
      }
    }
  },
  BattleInfo: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      rulesid: {
        type: "int32",
        id: 3
      },
      btype: {
        type: "BattleType",
        id: 4
      },
      ptype: {
        type: "PlayType",
        id: 5
      },
      redCompId: {
        type: "string",
        id: 6
      },
      redflist: {
        rule: "repeated",
        type: "DBBattleFormt",
        id: 7
      },
      blueCompId: {
        type: "string",
        id: 8
      },
      buleflist: {
        rule: "repeated",
        type: "DBBattleFormt",
        id: 9
      },
      tasks: {
        rule: "repeated",
        type: "int32",
        id: 10
      }
    }
  },
  BattleCmd: {
    fields: {
      cmdtype: {
        type: "string",
        id: 1
      },
      index: {
        type: "uint32",
        id: 2
      },
      value: {
        type: "bytes",
        id: 3
      }
    }
  },
  BattleReport: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      },
      Costtime: {
        type: "int32",
        id: 2
      },
      winSide: {
        type: "int32",
        id: 3
      },
      incmd: {
        rule: "repeated",
        type: "BattleCmd",
        id: 4
      },
      outcmd: {
        rule: "repeated",
        type: "BattleCmd",
        id: 5
      },
      completetask: {
        rule: "repeated",
        type: "int32",
        id: 6
      },
      death: {
        type: "int32",
        id: 7
      },
      round: {
        type: "int32",
        id: 8
      },
      harm: {
        type: "int32",
        id: 9
      },
      alive: {
        rule: "repeated",
        type: "BattleRole",
        id: 10
      }
    }
  },
  BattleRpcMessage: {
    fields: {
      rid: {
        type: "uint64",
        id: 1
      },
      method: {
        type: "string",
        id: 2
      },
      data: {
        type: "google.protobuf.Any",
        id: 3
      }
    }
  },
  BattleCheckResults: {
    fields: {
      ischeck: {
        type: "bool",
        id: 1
      }
    }
  },
  BattleGetInfoReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  BattleGetInfoResp: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      info: {
        type: "BattleStateInfo",
        id: 2
      }
    }
  },
  BattleCreateServerReq: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      }
    }
  },
  BattleCreateServerResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  BattleInCmdReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      side: {
        type: "int32",
        id: 2
      },
      "in": {
        type: "BattleCmd",
        id: 3
      }
    }
  },
  BattleInCmdResp: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      "in": {
        type: "BattleCmd",
        id: 2
      },
      issucc: {
        type: "bool",
        id: 3
      }
    }
  },
  BattleOutCmdPush: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      cmd: {
        rule: "repeated",
        type: "BattleCmd",
        id: 2
      }
    }
  },
  BattleFinishPush: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      winSide: {
        type: "int32",
        id: 2
      }
    }
  },
  BattleConcedeReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      side: {
        type: "int32",
        id: 2
      }
    }
  },
  BattleConcedeResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  BattleStateInfo: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      },
      outCmds: {
        rule: "repeated",
        type: "BattleCmd",
        id: 2
      },
      inputCmds: {
        rule: "repeated",
        type: "BattleCmd",
        id: 3
      }
    }
  },
  BattleType: {
    values: {
      nil: 0,
      pve: 1,
      pvp: 2,
      pvb: 3,
      eve: 4,
      rtpvp: 5,
      lpev: 6
    }
  },
  PlayType: {
    values: {
      "null": 0,
      mainline: 1,
      pagoda: 2,
      rtask: 3,
      hunting: 4,
      viking: 5,
      moonfantasy: 6,
      arena: 7,
      academy: 8,
      heroteaching: 9,
      combat: 10,
      enchant: 11,
      sociaty: 12,
      friendsmeet: 13,
      practicenpc: 14
    }
  },
  BBattleState: {
    values: {
      "in": 0,
      end: 2
    }
  },
  DBBattleComp: {
    values: {
      draw: 0,
      red: 1,
      bule: 2
    }
  },
  BattleRole: {
    fields: {
      tid: {
        type: "int32",
        id: 1
      },
      oid: {
        type: "string",
        id: 2
      },
      pos: {
        type: "int32",
        id: 3
      },
      heroID: {
        type: "string",
        id: 4
      },
      star: {
        type: "int32",
        id: 5
      },
      lv: {
        type: "int32",
        id: 6
      },
      captainSkill: {
        type: "int32",
        id: 7
      },
      mainSuitSkill: {
        type: "int32",
        id: 8
      },
      subSuitSkill: {
        type: "int32",
        id: 9
      },
      normalSkill: {
        rule: "repeated",
        type: "SkillData",
        id: 10
      },
      equipSkill: {
        rule: "repeated",
        type: "SkillData",
        id: 11
      },
      PandaBuff: {
        type: "int32",
        id: 12
      },
      property: {
        keyType: "int32",
        type: "int32",
        id: 13
      },
      ishelp: {
        type: "bool",
        id: 14
      },
      isboos: {
        type: "int32",
        id: 15
      },
      monsterid: {
        type: "int32",
        id: 16
      },
      currhp: {
        type: "int32",
        id: 17
      }
    }
  },
  DBBattleFormt: {
    fields: {
      leadpos: {
        type: "int32",
        id: 1
      },
      team: {
        rule: "repeated",
        type: "BattleRole",
        id: 2
      },
      systeam: {
        rule: "repeated",
        type: "BattleRole",
        id: 3
      },
      backupteam: {
        rule: "repeated",
        type: "BattleRole",
        id: 4
      }
    }
  },
  DBBattleRecord: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      btype: {
        type: "BattleType",
        id: 3
      },
      ptype: {
        type: "PlayType",
        id: 4
      },
      plevel: {
        type: "string",
        id: 5
      },
      state: {
        type: "BBattleState",
        id: 6
      },
      redCompId: {
        type: "string",
        id: 7
      },
      redflist: {
        rule: "repeated",
        type: "DBBattleFormt",
        id: 8
      },
      blueCompId: {
        type: "string",
        id: 9
      },
      buleflist: {
        rule: "repeated",
        type: "DBBattleFormt",
        id: 10
      },
      roundresult: {
        rule: "repeated",
        type: "DBBattleComp",
        id: 11
      },
      result: {
        type: "DBBattleComp",
        id: 12
      },
      tasks: {
        rule: "repeated",
        type: "int32",
        id: 13
      }
    }
  },
  ErrorData: {
    fields: {
      title: {
        type: "string",
        id: 1
      },
      dataint: {
        type: "int32",
        id: 2
      },
      datastring: {
        type: "string",
        id: 3
      }
    }
  },
  UserMessage: {
    fields: {
      MainType: {
        type: "string",
        id: 1
      },
      SubType: {
        type: "string",
        id: 2
      },
      servicePath: {
        type: "string",
        id: 3
      },
      data: {
        type: "google.protobuf.Any",
        id: 4
      },
      sec: {
        type: "string",
        id: 5
      }
    }
  },
  AgentMessage: {
    fields: {
      Ip: {
        type: "string",
        id: 1
      },
      UserSessionId: {
        type: "string",
        id: 2
      },
      UserId: {
        type: "string",
        id: 3
      },
      ServiceTag: {
        type: "string",
        id: 4
      },
      GatewayServiceId: {
        type: "string",
        id: 5
      },
      MainType: {
        type: "string",
        id: 6
      },
      SubType: {
        type: "string",
        id: 7
      },
      Message: {
        type: "google.protobuf.Any",
        id: 8
      }
    }
  },
  RPCMessageReply: {
    fields: {
      Code: {
        type: "ErrorCode",
        id: 1
      },
      ErrorMessage: {
        type: "string",
        id: 2
      },
      ErrorData: {
        type: "ErrorData",
        id: 3
      },
      Reply: {
        rule: "repeated",
        type: "UserMessage",
        id: 4
      }
    }
  },
  AgentBuildReq: {
    fields: {
      UserSessionId: {
        type: "string",
        id: 1
      },
      UserId: {
        type: "string",
        id: 2
      },
      WorkerId: {
        type: "string",
        id: 3
      }
    }
  },
  AgentUnBuildReq: {
    fields: {
      UserSessionId: {
        type: "string",
        id: 1
      }
    }
  },
  AgentSendMessageReq: {
    fields: {
      UserSessionId: {
        type: "string",
        id: 1
      },
      Reply: {
        rule: "repeated",
        type: "UserMessage",
        id: 2
      }
    }
  },
  BatchMessageReq: {
    fields: {
      UserSessionIds: {
        rule: "repeated",
        type: "string",
        id: 1
      },
      MainType: {
        type: "string",
        id: 2
      },
      SubType: {
        type: "string",
        id: 3
      },
      Data: {
        type: "google.protobuf.Any",
        id: 4
      }
    }
  },
  BroadCastMessageReq: {
    fields: {
      MainType: {
        type: "string",
        id: 1
      },
      SubType: {
        type: "string",
        id: 2
      },
      Data: {
        type: "google.protobuf.Any",
        id: 3
      }
    }
  },
  AgentCloseeReq: {
    fields: {
      UserSessionId: {
        type: "string",
        id: 1
      }
    }
  },
  NoticeUserLoginReq: {
    fields: {
      Ip: {
        type: "string",
        id: 1
      },
      UserSessionId: {
        type: "string",
        id: 2
      },
      UserId: {
        type: "string",
        id: 3
      },
      ServiceTag: {
        type: "string",
        id: 4
      },
      GatewayServiceId: {
        type: "string",
        id: 5
      }
    }
  },
  NoticeUserCreateReq: {
    fields: {
      Ip: {
        type: "string",
        id: 1
      },
      UserSessionId: {
        type: "string",
        id: 2
      },
      UserId: {
        type: "string",
        id: 3
      },
      ServiceTag: {
        type: "string",
        id: 4
      },
      GatewayServiceId: {
        type: "string",
        id: 5
      }
    }
  },
  NoticeUserCloseReq: {
    fields: {
      Ip: {
        type: "string",
        id: 1
      },
      UserSessionId: {
        type: "string",
        id: 2
      },
      UserId: {
        type: "string",
        id: 3
      },
      ServiceTag: {
        type: "string",
        id: 4
      },
      GatewayServiceId: {
        type: "string",
        id: 5
      }
    }
  },
  HeroAttributesType: {
    values: {
      Hp: 0,
      Atk: 1,
      Def: 2,
      Speed: 3,
      Crit: 4
    }
  },
  SkillData: {
    fields: {
      skillID: {
        type: "int32",
        id: 1
      },
      skillLv: {
        type: "int32",
        id: 2
      }
    }
  },
  UserAssets: {
    fields: {
      A: {
        type: "string",
        id: 1
      },
      T: {
        type: "string",
        id: 2
      },
      N: {
        type: "int32",
        id: 3
      }
    }
  },
  UserAtno: {
    fields: {
      A: {
        type: "string",
        id: 1
      },
      T: {
        type: "string",
        id: 2
      },
      N: {
        type: "int32",
        id: 3
      },
      O: {
        type: "string",
        id: 4
      }
    }
  },
  TaskParam: {
    fields: {
      first: {
        type: "int32",
        id: 1
      },
      second: {
        type: "int32",
        id: 2
      }
    }
  },
  RtaskParam: {
    fields: {
      param1: {
        type: "int32",
        id: 1
      },
      param2: {
        type: "int32",
        id: 2
      },
      param3: {
        type: "int32",
        id: 3
      }
    }
  },
  UIdReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  NameReq: {
    fields: {
      name: {
        type: "string",
        id: 1
      }
    }
  },
  EmptyReq: {
    fields: {}
  },
  EmptyResp: {
    fields: {}
  },
  RPCGeneralReqA1: {
    fields: {
      param1: {
        type: "string",
        id: 1
      }
    }
  },
  RPCGeneralReqA2: {
    fields: {
      param1: {
        type: "string",
        id: 1
      },
      param2: {
        type: "string",
        id: 2
      }
    }
  },
  RPCGeneralReqA3: {
    fields: {
      param1: {
        type: "string",
        id: 1
      },
      param2: {
        type: "string",
        id: 2
      },
      param3: {
        type: "string",
        id: 3
      }
    }
  },
  RPCGeneralReqA4: {
    fields: {
      param1: {
        type: "string",
        id: 1
      },
      param2: {
        type: "string",
        id: 2
      },
      param3: {
        type: "string",
        id: 3
      },
      param4: {
        type: "string",
        id: 4
      }
    }
  },
  RPCRTaskReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      taskType: {
        type: "int32",
        id: 2
      },
      param: {
        rule: "repeated",
        type: "int32",
        id: 3
      }
    }
  },
  ServiceDBInfo: {
    fields: {
      serverid: {
        type: "string",
        id: 1
      },
      serverName: {
        type: "string",
        id: 2
      },
      owner: {
        type: "string",
        id: 3
      },
      cross: {
        type: "string",
        id: 4
      },
      crossId: {
        type: "string",
        id: 5
      },
      singleserver: {
        type: "string",
        id: 6
      },
      opentime: {
        type: "int64",
        id: 7
      },
      redisIsCluster: {
        type: "bool",
        id: 8
      },
      redisAddr: {
        rule: "repeated",
        type: "string",
        id: 9
      },
      redisPassword: {
        type: "string",
        id: 10
      },
      redisDb: {
        type: "int32",
        id: 11
      },
      MongodbUrl: {
        type: "string",
        id: 12
      },
      mongodbDatabase: {
        type: "string",
        id: 13
      }
    }
  },
  ErrorCode: {
    values: {
      Success: 0,
      GatewayException: 1,
      NoFindService: 10,
      NoFindServiceHandleFunc: 11,
      RpcFuncExecutionError: 12,
      CacheReadError: 13,
      SqlExecutionError: 14,
      ReqParameterError: 15,
      SignError: 16,
      InsufficientPermissions: 17,
      NoLogin: 18,
      UserSessionNobeing: 19,
      StateInvalid: 20,
      DBError: 21,
      SystemError: 22,
      DecodeError: 23,
      TimestampTimeout: 24,
      PbError: 25,
      AgentUidEmpty: 26,
      Exception: 100,
      Unknown: 101,
      ResNoEnough: 102,
      ConfigurationException: 103,
      ConfigNoFound: 104,
      UserLogined: 105,
      NoOpened: 106,
      DataNotFound: 107,
      SecKeyInvalid: 1000,
      SecKey: 1001,
      BindUser: 1002,
      GoldNoEnough: 1003,
      DiamondNoEnough: 1004,
      RoleCreated: 1005,
      UserNickNameExist: 1006,
      VeriCodeNoValid: 1007,
      VeriCodeExpired: 1008,
      UserResetData: 1009,
      UserModiNameCount: 1010,
      UserNickNameEmpty: 1011,
      UserExpandNull: 1012,
      UserExpNoEnough: 1013,
      UserFriendNoEnough: 1014,
      UserSociatyCoinNoEnough: 1015,
      UserArenaCoinNoEnough: 1016,
      UserVitNoEnough: 1017,
      UserVitLimit: 1018,
      UserMoongoldNoEnough: 1019,
      UserOffline: 1020,
      UserNofound: 1021,
      UserSign: 1022,
      OpenCondErr: 1023,
      OpenCondActivate: 1024,
      UserTalent1NoEnough: 1025,
      UserTalent2NoEnough: 1026,
      UserTalent3NoEnough: 1027,
      UserTalent4NoEnough: 1028,
      UserMerchantNoEnough: 1029,
      FriendNotSelf: 1100,
      FriendSelfMax: 1101,
      FriendTargetMax: 1102,
      FriendSelfNoData: 1103,
      FriendTargetNoData: 1104,
      FriendYet: 1105,
      FriendApplyYet: 1106,
      FriendSelfBlackYet: 1107,
      FriendTargetBlackYet: 1108,
      FriendApplyError: 1109,
      FriendBlackMax: 1110,
      FriendSearchNameEmpty: 1111,
      FriendZaned: 1112,
      FriendZanreceived: 1113,
      FriendZanSelf: 1114,
      FriendPointLimit: 1115,
      FriendNoreceived: 1116,
      FriendQiecuoTimeout: 1117,
      FriendQiecuoRequested: 1118,
      FriendQiecuoNoRequest: 1119,
      FriendQiecuoing: 1120,
      FriendQiecuoTargetPk: 1121,
      FriendTicketNoEnough: 1122,
      ItemsNoEnough: 1200,
      ItemsNoFoundGird: 1201,
      ItemsGridNumUpper: 1202,
      ItemsGirdAmountUpper: 1203,
      ItemsUseNotSupported: 1204,
      ItemsUseNoCanSell: 1205,
      ItemsBuyPsUpperLimit: 1206,
      HeroNoExist: 1300,
      HeroNoEnough: 1301,
      HeroMaxLv: 1302,
      HeroInitCreat: 1303,
      HeroColorErr: 1304,
      HeroSkillUpErr: 1305,
      HeroMaxResonate: 1306,
      HeroNoResonate: 1307,
      HeroNotNeedResonate: 1308,
      HeroNoEnergy: 1309,
      HeroCreate: 1310,
      HeroEquipUpdate: 1311,
      HeroMaxAwaken: 1312,
      HeroIsLock: 1313,
      HeroMaxCount: 1314,
      HeroCostTypeErr: 1315,
      HeroStarErr: 1316,
      HeroTypeErr: 1317,
      HeroExpTypeErr: 1318,
      HeroAddMaxExp: 1319,
      HeroStarLvErr: 1320,
      HeroMaxStarLv: 1321,
      DrawCardTypeNotFound: 1322,
      HeroMaxSkillLv: 1323,
      HeroAlreadyKongFuStatus: 1324,
      HeroLvNoEnough: 1325,
      HeroIsRegister: 1326,
      EquipmentOnFoundEquipment: 1400,
      EquipmentLvlimitReached: 1401,
      EquipmentIsWorn: 1402,
      EquipmentNoCanSell: 1403,
      EquipmentSuiteNotFound: 1404,
      MainlineNotFindChapter: 1500,
      MainlineIDFailed: 1501,
      MainlineNotFound: 1502,
      MainlinePreNotFound: 1503,
      MainlineRepeatReward: 1504,
      MainlineCompleteReward: 1505,
      MainlineNoEnoughStar: 1506,
      TaskInit: 1600,
      TaskReset: 1601,
      TaskHandle: 1602,
      TaskReceived: 1603,
      TaskActiveInit: 1604,
      TaskActiveNofound: 1605,
      TaskActiveNoenough: 1606,
      TaskNoFinished: 1607,
      TaskFinished: 1608,
      TaskTagEmpty: 1609,
      TaskIdEmpty: 1610,
      TaskNotFound: 1611,
      ShopGoodsIsSoldOut: 1700,
      ShopNoSurplusRefreshNum: 1701,
      MailErr: 1800,
      PagodaNotFound: 1900,
      PagodaLevlErr: 1901,
      PagodaGetRewardErr: 1902,
      PagodaConditionErr: 1903,
      PagodaUnlock: 1904,
      MartialhallNotUnlocked: 2000,
      MartialhallInUse: 2001,
      MartialhallUnlocked: 2002,
      MartialhallNoUnlocked: 2003,
      MartialhallAtlasError: 2004,
      MartialhallAtlasNoReward: 2005,
      GourmetMoreOrderTime: 2101,
      GourmetSkillMaxLv: 2102,
      RtaskFinished: 2201,
      RtaskUnFinished: 2202,
      RtaskNoRtask: 2203,
      RtaskRewarded: 2204,
      RtaskPreNoFinish: 2205,
      RtaskCondiNoReach: 2206,
      RtaskNoLastOne: 2207,
      RtaskCondiNoFound: 2208,
      VikingLvErr: 2301,
      VikingBoosType: 2302,
      VikingBuyMaxCount: 2303,
      VikingMaxChallengeCount: 2304,
      MoonfantasyHasExpired: 2401,
      MoonfantasyJoinUp: 2402,
      MoonfantasyDareUp: 2403,
      MoonfantasyBattleNoEnd: 2404,
      MoonfantasyBattleNoWin: 2405,
      MoonfantasyNoJoin: 2406,
      MoonfantasyNotEnoughbattles: 2407,
      BattleNoFoundRecord: 2501,
      LinestoryTaskFinished: 2601,
      LinestoryNoReceive: 2602,
      LinestoryTaskDisabledEnter: 2603,
      LinestoryChapterNoOpen: 2604,
      LinestoryPreNoComplete: 2605,
      HuntingLvErr: 2701,
      HuntingBoosType: 2702,
      HuntingBuyMaxCount: 2703,
      HuntingMaxChallengeCount: 2704,
      HuntingNoChallengeCount: 2705,
      EnchantLvErr: 2711,
      EnchantBoosType: 2712,
      EnchantBuyMaxCount: 2713,
      EnchantMaxChallengeCount: 2714,
      EnchantNoChallengeCount: 2715,
      LibraryMaxLv: 2801,
      LibraryNoData: 2802,
      LibraryActivation: 2803,
      LibraryReward: 2804,
      LibraryLvReward: 2805,
      LibraryFetterTaskNoFound: 2806,
      LibraryPreTaskNoFinished: 2807,
      LibraryGiveMaxCount: 2808,
      BattleValidationFailed: 2901,
      BattleNoWin: 2902,
      BattleCreateFailed: 2903,
      BattleInCmdFailed: 2904,
      BattleUserOff: 2905,
      BattleCapskillCheckFailed: 2906,
      BattleNoKeep: 2907,
      SociatyNoFound: 3000,
      SociatyAdded: 3001,
      SociatyDiamondNoEnough: 3002,
      SociatyNoMember: 3003,
      SociatyNoRight: 3004,
      SociatyNoAdded: 3005,
      SociatyDismiss: 3006,
      SociatyQuit: 3007,
      SociatyAgree: 3008,
      SociatyRefuse: 3009,
      SociatyLogParams: 3010,
      SociatyMasterNoDiss: 3011,
      SociatySettingJob: 3012,
      SociatySetting: 3013,
      SociatyNoAccuse: 3014,
      SociatySign: 3015,
      SociatySigned: 3016,
      SociatyCDLimit: 3017,
      SociatyApplyMax: 3018,
      SociatySelfSetting: 3019,
      SociatyMemberCountLimit: 3020,
      SociatyRewardReceived: 3021,
      SociatyRewardReceive: 3022,
      SociatyResource: 3023,
      SociatyBelongTo: 3025,
      SociatyApplied: 3026,
      SociatyAppyLvNoEnough: 3027,
      SociatyTaskValidation: 3028,
      SociatyActivityNoEnough: 3029,
      SociatyAcitvityReceive: 3030,
      SociatyDismissed: 3031,
      SociatyNameExist: 3032,
      SociatyQuitNoAllowed: 3033,
      SociatyNoMaster: 3034,
      SociatyNoFormation: 3035,
      SociatyTicketsNoEnough: 3036,
      SociatySportsNoinit: 3037,
      SociatySportsEnd: 3038,
      SociatyTeamUnlock: 3039,
      SociatyTaskNoFound: 3040,
      SociatyTaskNoFinished: 3041,
      SociatyTaskReceived: 3042,
      SociatyApplyLvLimit: 3043,
      ArenaTicketBuyUp: 3101,
      ArenaTicketNotEnough: 3102,
      ArenaTicketNpcInCd: 3103,
      TalentRepeatLearn: 3201,
      TalentErrData: 3202,
      TalentUnLockerBefore: 3203,
      TalentResetState: 3204,
      TrollBuyMax: 3301,
      TrollSellMax: 3302,
      TrollMaxSellCount: 3303,
      TrollMaxItemCount: 3304,
      TrollRepeatedReward: 3305,
      TrollCity: 3306,
      TrollTask: 3307,
      HoroscopeNotTurnedOn: 3401,
      HoroscopeRestCDNoEnd: 3402,
      PrivilegeNotFound: 3501,
      PrivilegeRenewTime: 3502,
      VipLvError: 3503,
      VipGiftError: 3504,
      VipBuyRepeat: 3505,
      GrowtaskReceive: 3601,
      GrowtaskAdvReceive: 3602,
      PayBuyNumNotEnough: 3701,
      PayRenewTimeErr: 3702,
      PayOrderCompleted: 3703,
      WorldtaskFinish: 3801,
      WorldtaskLvNotEnough: 3802,
      WorldtaskNoAccept: 3803,
      WorldtaskNoComplete: 3804,
      WorldtaskFinihed: 3805,
      WorldtaskLastUnFinished: 3806,
      WorldtaskGroupIdNosame: 3807,
      WorldtaskChapterUnFinished: 3808,
      WorldtaskChapterReceived: 3809,
      WorldtaskNoProcess: 3810,
      AcademyTaskNoCompleteTask: 3901,
      AutoBattleNoData: 4001,
      AutoBattleStatesErr: 4002,
      SmithyNoReel: 4101,
      SmithyNoTemperature: 4102,
      SmithyStoveMaxLv: 4103,
      SmithyCustomerLimit: 4104,
      SmithyCustomerEquipNoEnough: 4105,
      SmithyMaxTemperature: 4106,
      SmithyLackLava: 4107,
      SmithyAtlasMaxLv: 4108,
      SmithyAtlasLackLv: 4109,
      SmithyTaskNoFinished: 4110,
      SmithyTaskReceived: 4111,
      SmithyNoFoundAtlas: 4112,
      SmithyNoActivateAtlas: 4113,
      SmithyLvToolsFailed: 4114,
      SmithyLvToolsPre: 4115,
      SmithyAtlasTypeErr: 4116,
      DispatchHeroNoReached: 4201,
      DispatchNoFree: 4202,
      DispatchTicketNoEnough: 4203,
      DispatchHeroAssigned: 4204,
      DispatchTaskExpired: 4205,
      DispatchRefreshMax: 4206,
      DispatchNoFinished: 4207,
      DispatchHeroNoEnough: 4208,
      PracticeQiecuoing: 4301,
      PracticeSent: 4302,
      PracticeInviteTimeOut: 4303,
      PracticePillarMaxLv: 4304,
      PracticeYouQiecuoing: 4305,
      PracticeTargetQiecuoing: 4306,
      ParkourMemberFull: 4401,
      ParkourInviteOverdue: 4402,
      ParkourInviteNoPermissions: 4403,
      ParkourTargetTeamed: 4404,
      ReputationTalentFull: 4501,
      ReputationNoPreNodeLv: 4502,
      OldtimesReceived: 4601,
      OldtimesFinished: 4602,
      OldtimesLevelOver: 4603,
      OldtimesPreLevelNoFinished: 4604,
      OldtimesNoAllFinished: 4605
    }
  },
  google: {
    nested: {
      protobuf: {
        nested: {
          Any: {
            fields: {
              type_url: {
                type: "string",
                id: 1
              },
              value: {
                type: "bytes",
                id: 2
              }
            }
          }
        }
      }
    }
  },
  HeroType: {
    values: {
      HeroTypeNil: 0,
      HeroTypeKongFu: 1
    }
  },
  DBHero: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      heroID: {
        type: "string",
        id: 3
      },
      star: {
        type: "int32",
        id: 4
      },
      lv: {
        type: "int32",
        id: 5
      },
      exp: {
        type: "int32",
        id: 6
      },
      juexingLv: {
        type: "int32",
        id: 7
      },
      captainSkill: {
        type: "int32",
        id: 8
      },
      normalSkill: {
        rule: "repeated",
        type: "SkillData",
        id: 9
      },
      property: {
        keyType: "string",
        type: "int32",
        id: 10
      },
      addProperty: {
        keyType: "string",
        type: "int32",
        id: 11
      },
      cardType: {
        type: "int32",
        id: 12
      },
      curSkin: {
        type: "int32",
        id: 13
      },
      skins: {
        rule: "repeated",
        type: "int32",
        id: 14
      },
      block: {
        type: "bool",
        id: 15
      },
      equipID: {
        rule: "repeated",
        type: "string",
        id: 16
      },
      sameCount: {
        type: "int32",
        id: 17
      },
      suiteId: {
        type: "int32",
        id: 18
      },
      suiteExtId: {
        type: "int32",
        id: 19
      },
      juexProperty: {
        keyType: "string",
        type: "int32",
        id: 20
      },
      status: {
        type: "HeroType",
        id: 21
      },
      suite1Star: {
        type: "int32",
        id: 22
      },
      suite2Star: {
        type: "int32",
        id: 23
      },
      suite1Lv: {
        type: "int32",
        id: 24
      },
      suite2Lv: {
        type: "int32",
        id: 25
      },
      talentProperty: {
        keyType: "string",
        type: "int32",
        id: 26
      },
      equipSkill: {
        rule: "repeated",
        type: "SkillData",
        id: 27
      },
      horoscopeProperty: {
        keyType: "string",
        type: "int32",
        id: 28
      },
      fulllvenr: {
        type: "int32",
        id: 29
      },
      kongfuUid: {
        type: "string",
        id: 30
      },
      fetters: {
        keyType: "string",
        type: "int32",
        id: 31
      }
    }
  },
  DBHeroRecord: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      star4: {
        type: "int32",
        id: 3
      },
      star5: {
        type: "int32",
        id: 4
      },
      mtime: {
        type: "int64",
        id: 5
      },
      drawcount: {
        type: "int32",
        id: 6
      },
      condition: {
        keyType: "string",
        type: "int32",
        id: 7
      },
      star5Hero: {
        keyType: "string",
        type: "int32",
        id: 8
      },
      totalcount: {
        type: "int32",
        id: 9
      },
      daycount: {
        type: "int32",
        id: 10
      },
      onebuy: {
        type: "int32",
        id: 11
      },
      tenbuy: {
        type: "int32",
        id: 12
      },
      inevitable: {
        type: "int32",
        id: 13
      },
      inevitable1: {
        type: "int32",
        id: 14
      },
      race: {
        keyType: "int32",
        type: "int32",
        id: 15
      }
    }
  },
  DBHeroTalent: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      heroId: {
        type: "string",
        id: 3
      },
      talent: {
        keyType: "int32",
        type: "int32",
        id: 4
      }
    }
  },
  DBPlayerBattleFormt: {
    fields: {
      leadpos: {
        type: "int32",
        id: 1
      },
      formt: {
        rule: "repeated",
        type: "DBHero",
        id: 2
      }
    }
  },
  ArenaPlayer: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      },
      dan: {
        type: "int32",
        id: 5
      },
      integral: {
        type: "int32",
        id: 6
      },
      rank: {
        type: "int32",
        id: 7
      },
      defend: {
        type: "DBPlayerBattleFormt",
        id: 8
      },
      isai: {
        type: "bool",
        id: 9
      },
      mformatid: {
        type: "int32",
        id: 10
      },
      changeintegral: {
        type: "int32",
        id: 11
      }
    }
  },
  BattleRecordState: {
    values: {
      AttackWin: 0,
      AttackLost: 1,
      DefendkWin: 2,
      DefendLost: 3,
      WaitingRevenge: 4,
      RevengeFailed: 5,
      RevengeSucceeded: 6,
      RevengeEnd: 7
    }
  },
  DBHeroBase: {
    fields: {
      oid: {
        type: "string",
        id: 1
      },
      cid: {
        type: "string",
        id: 2
      },
      star: {
        type: "int32",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      },
      property: {
        keyType: "string",
        type: "int32",
        id: 5
      },
      addProperty: {
        keyType: "string",
        type: "int32",
        id: 6
      },
      juexProperty: {
        keyType: "string",
        type: "int32",
        id: 7
      },
      talentProperty: {
        keyType: "string",
        type: "int32",
        id: 8
      },
      horoscopeProperty: {
        keyType: "string",
        type: "int32",
        id: 9
      },
      fetters: {
        keyType: "string",
        type: "int32",
        id: 10
      },
      normalSkill: {
        rule: "repeated",
        type: "SkillData",
        id: 11
      }
    }
  },
  DBArenaBattleRecord: {
    fields: {
      bid: {
        type: "string",
        id: 1
      },
      time: {
        type: "int64",
        id: 2
      },
      iswin: {
        type: "bool",
        id: 3
      },
      isdefend: {
        type: "bool",
        id: 4
      },
      rivalid: {
        type: "string",
        id: 5
      },
      rivalname: {
        type: "string",
        id: 6
      },
      leadpos: {
        type: "int32",
        id: 7
      },
      formt: {
        rule: "repeated",
        type: "DBHeroBase",
        id: 8
      },
      addintegral: {
        type: "int32",
        id: 9
      },
      State: {
        type: "BattleRecordState",
        id: 10
      }
    }
  },
  DBArenaUser: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      },
      integral: {
        type: "int32",
        id: 5
      },
      dan: {
        type: "int32",
        id: 7
      },
      attack: {
        type: "DBPlayerBattleFormt",
        id: 8
      },
      defend: {
        type: "DBPlayerBattleFormt",
        id: 9
      },
      streak: {
        type: "int32",
        id: 10
      },
      attackrate: {
        type: "int32",
        id: 11
      },
      defendrate: {
        type: "int32",
        id: 12
      },
      rank: {
        type: "int32",
        id: 13
      },
      buynum: {
        type: "int32",
        id: 14
      },
      record: {
        rule: "repeated",
        type: "DBArenaBattleRecord",
        id: 15
      },
      lastrtickettime: {
        type: "int64",
        id: 16
      },
      attackwinuum: {
        type: "int32",
        id: 17
      },
      attacktotaluum: {
        type: "int32",
        id: 18
      },
      defendwinuum: {
        type: "int32",
        id: 19
      },
      defendtotaluum: {
        type: "int32",
        id: 20
      },
      loc: {
        rule: "repeated",
        type: "double",
        id: 21
      },
      isdef: {
        type: "bool",
        id: 22
      },
      npc: {
        keyType: "int32",
        type: "DBNpc",
        id: 23
      },
      prededuction: {
        type: "int32",
        id: 24
      }
    }
  },
  DBNpc: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      cd: {
        type: "int64",
        id: 2
      },
      index: {
        type: "int32",
        id: 3
      }
    }
  },
  RPCModifyIntegralReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      integral: {
        type: "int32",
        id: 2
      }
    }
  },
  ArenaInfoReq: {
    fields: {}
  },
  ArenaInfoResp: {
    fields: {
      info: {
        type: "DBArenaUser",
        id: 1
      }
    }
  },
  ArenaOtherInfoReq: {
    fields: {
      otherId: {
        type: "string",
        id: 1
      }
    }
  },
  ArenaOtherInfoResp: {
    fields: {
      info: {
        type: "DBArenaUser",
        id: 1
      }
    }
  },
  ArenaSetAttFormtReq: {
    fields: {
      leadpos: {
        type: "int32",
        id: 1
      },
      formt: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  ArenaSetAttFormtResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  ArenaSetDefFormtReq: {
    fields: {
      leadpos: {
        type: "int32",
        id: 1
      },
      formt: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  ArenaSetDefFormtResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  ArenaMatcheReq: {
    fields: {}
  },
  ArenaMatcheResp: {
    fields: {
      players: {
        rule: "repeated",
        type: "ArenaPlayer",
        id: 1
      }
    }
  },
  ArenaChallengeReq: {
    fields: {
      playerid: {
        type: "string",
        id: 1
      },
      isai: {
        type: "bool",
        id: 2
      },
      mformatId: {
        type: "int32",
        id: 3
      },
      battle: {
        type: "BattleFormation",
        id: 4
      }
    }
  },
  ArenaChallengeResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      info: {
        type: "BattleInfo",
        id: 2
      }
    }
  },
  ArenaChallengeRewardReq: {
    fields: {
      iswin: {
        type: "bool",
        id: 1
      },
      isai: {
        type: "bool",
        id: 2
      },
      aiintegral: {
        type: "int32",
        id: 3
      },
      ainame: {
        type: "string",
        id: 4
      },
      report: {
        type: "BattleReport",
        id: 5
      },
      revengeid: {
        type: "string",
        id: 6
      }
    }
  },
  ArenaChallengeRewardResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      integral: {
        type: "int32",
        id: 2
      },
      dan: {
        type: "int32",
        id: 3
      }
    }
  },
  ArenaRankReq: {
    fields: {}
  },
  ArenaRankResp: {
    fields: {
      players: {
        rule: "repeated",
        type: "ArenaPlayer",
        id: 1
      },
      info: {
        type: "DBArenaUser",
        id: 2
      }
    }
  },
  ArenaBuyReq: {
    fields: {
      buyNum: {
        type: "int32",
        id: 1
      }
    }
  },
  ArenaBuyResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      ticket: {
        type: "int32",
        id: 2
      }
    }
  },
  ArenaDelRewardReq: {
    fields: {
      bid: {
        type: "string",
        id: 1
      }
    }
  },
  ArenaDelRewardResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      bid: {
        type: "string",
        id: 2
      }
    }
  },
  ArenaPlotReq: {
    fields: {
      pid: {
        type: "int32",
        id: 1
      },
      battle: {
        type: "BattleFormation",
        id: 2
      }
    }
  },
  ArenaPlotResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      pid: {
        type: "int32",
        id: 2
      },
      info: {
        type: "BattleInfo",
        id: 3
      }
    }
  },
  ArenaPlotRewardReq: {
    fields: {
      pid: {
        type: "int32",
        id: 1
      },
      report: {
        type: "BattleReport",
        id: 2
      }
    }
  },
  ArenaPlotRewardResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      npc: {
        keyType: "int32",
        type: "DBNpc",
        id: 2
      }
    }
  },
  DBPandaAtlas: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      collect: {
        keyType: "string",
        type: "CollectInfo",
        id: 3
      },
      score: {
        type: "int32",
        id: 4
      },
      award: {
        type: "int32",
        id: 5
      }
    }
  },
  CollectInfo: {
    fields: {
      score: {
        type: "int32",
        id: 1
      },
      time: {
        type: "int64",
        id: 2
      },
      activate: {
        type: "bool",
        id: 3
      }
    }
  },
  AtlasGetListReq: {
    fields: {}
  },
  AtlasGetListResp: {
    fields: {
      data: {
        type: "DBPandaAtlas",
        id: 1
      }
    }
  },
  AtlasActivateReq: {
    fields: {
      id: {
        type: "string",
        id: 1
      }
    }
  },
  AtlasActivateResp: {
    fields: {
      data: {
        type: "DBPandaAtlas",
        id: 1
      }
    }
  },
  AtlasAwardReq: {
    fields: {}
  },
  AtlasAwardResp: {
    fields: {
      data: {
        type: "DBPandaAtlas",
        id: 1
      },
      res: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  DBAutoBattle: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      autoWin: {
        type: "bool",
        id: 3
      },
      maxExp: {
        type: "bool",
        id: 4
      },
      autoBuy: {
        type: "bool",
        id: 5
      },
      autoSell: {
        type: "int32",
        id: 6
      },
      ptype: {
        type: "PlayType",
        id: 7
      },
      bossId: {
        type: "int32",
        id: 8
      },
      difficulty: {
        type: "int32",
        id: 9
      },
      battle: {
        type: "BattleFormation",
        id: 10
      }
    }
  },
  AutoBattleChallengeReq: {
    fields: {
      bossId: {
        type: "int32",
        id: 1
      },
      difficulty: {
        type: "int32",
        id: 2
      },
      battle: {
        type: "BattleFormation",
        id: 3
      },
      autoWin: {
        type: "bool",
        id: 4
      },
      maxExp: {
        type: "bool",
        id: 5
      },
      autoBuy: {
        type: "bool",
        id: 6
      },
      autoSell: {
        type: "int32",
        id: 7
      },
      ptype: {
        type: "PlayType",
        id: 8
      }
    }
  },
  AutoBattleChallengeResp: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      }
    }
  },
  AutoBattleOverReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      report: {
        type: "BattleReport",
        id: 2
      }
    }
  },
  AutoBattleOverResp: {
    fields: {
      asset: {
        rule: "repeated",
        type: "UserAtno",
        id: 1
      },
      info: {
        type: "BattleInfo",
        id: 2
      },
      over: {
        type: "bool",
        id: 3
      }
    }
  },
  AutoBattleStopReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      }
    }
  },
  AutoBattleStopResp: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      }
    }
  },
  ComModifyOperate: {
    fields: {
      to: {
        type: "int32",
        id: 1
      },
      nv: {
        type: "float",
        id: 2
      },
      reset: {
        type: "bool",
        id: 3
      }
    }
  },
  ComStartFight: {
    fields: {
      reserve: {
        type: "int32",
        id: 1
      }
    }
  },
  ComInitFight: {
    fields: {
      curWave: {
        type: "int32",
        id: 1
      },
      redEntryRid: {
        type: "int32",
        id: 2
      },
      buleEntryRid: {
        type: "int32",
        id: 3
      },
      playType: {
        type: "int32",
        id: 4
      },
      roles: {
        rule: "repeated",
        type: "BattleRole",
        id: 5
      }
    }
  },
  ComDeleteRole: {
    fields: {
      to: {
        type: "int32",
        id: 1
      }
    }
  },
  ComEndFight: {
    fields: {
      fightId: {
        type: "string",
        id: 1
      },
      winSide: {
        type: "int32",
        id: 2
      },
      totalRound: {
        type: "int32",
        id: 3
      },
      RedDeath: {
        type: "int32",
        id: 4
      },
      buleDeath: {
        type: "int32",
        id: 5
      }
    }
  },
  ComSkillInfo: {
    fields: {
      skillId: {
        type: "int32",
        id: 1
      },
      lv: {
        type: "int32",
        id: 2
      },
      maxCd: {
        type: "int32",
        id: 3
      },
      cd: {
        type: "int32",
        id: 4
      },
      showEffect: {
        type: "bool",
        id: 5
      }
    }
  },
  ComStartAction: {
    fields: {
      from: {
        type: "int32",
        id: 1
      },
      target: {
        type: "int32",
        id: 2
      },
      curRound: {
        type: "int32",
        id: 3
      },
      skillInfo: {
        rule: "repeated",
        type: "ComSkillInfo",
        id: 4
      }
    }
  },
  ComSkillCDAction: {
    fields: {
      from: {
        type: "int32",
        id: 1
      },
      skillInfo: {
        rule: "repeated",
        type: "ComSkillInfo",
        id: 2
      }
    }
  },
  ComStopAction: {
    fields: {
      from: {
        type: "int32",
        id: 1
      }
    }
  },
  ComWaitInputSkill: {
    fields: {
      auto: {
        type: "bool",
        id: 1
      },
      side: {
        type: "int32",
        id: 2
      },
      skillId: {
        type: "int32",
        id: 3
      },
      target: {
        type: "int32",
        id: 4
      },
      curRound: {
        type: "int32",
        id: 5
      }
    }
  },
  ComSkillAtk: {
    fields: {
      from: {
        type: "int32",
        id: 1
      },
      skillid: {
        type: "int32",
        id: 2
      },
      lv: {
        type: "int32",
        id: 3
      },
      param: {
        type: "int32",
        id: 4
      },
      target: {
        type: "int32",
        id: 5
      },
      comList: {
        rule: "repeated",
        type: "ComSkillAfterAtk",
        id: 6
      },
      aniName: {
        type: "string",
        id: 7
      }
    }
  },
  ComSkillAfterAtk: {
    fields: {
      skillid: {
        type: "int32",
        id: 1
      },
      from: {
        type: "int32",
        id: 2
      },
      target: {
        rule: "repeated",
        type: "int32",
        id: 4
      },
      comList: {
        rule: "repeated",
        type: "BattleCmd",
        id: 5
      }
    }
  },
  ComMondifyBuff: {
    fields: {
      to: {
        type: "int32",
        id: 1
      },
      gid: {
        type: "int64",
        id: 2
      },
      buffId: {
        type: "int32",
        id: 3
      },
      overlapNum: {
        type: "int32",
        id: 4
      },
      param: {
        type: "float",
        id: 5
      },
      operate: {
        type: "int32",
        id: 6
      }
    }
  },
  ComRebirth: {
    fields: {
      to: {
        type: "int32",
        id: 1
      }
    }
  },
  ComModifyHealth: {
    fields: {
      to: {
        type: "int32",
        id: 1
      },
      from: {
        type: "int32",
        id: 2
      },
      baoji: {
        type: "bool",
        id: 3
      },
      hideDmg: {
        type: "bool",
        id: 4
      },
      modifyType: {
        type: "int32",
        id: 5
      },
      num: {
        type: "float",
        id: 6
      },
      nhp: {
        type: "int32",
        id: 7
      },
      mhp: {
        type: "int32",
        id: 8
      }
    }
  },
  ComTeachTask: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      count: {
        type: "int32",
        id: 2
      }
    }
  },
  ComStory: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      storyId: {
        type: "int32",
        id: 2
      }
    }
  },
  ComGuide: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      guideId: {
        type: "int32",
        id: 2
      }
    }
  },
  ComCreateRoles: {
    fields: {
      side: {
        type: "int32",
        id: 1
      },
      entryRid: {
        type: "int32",
        id: 2
      },
      playType: {
        type: "int32",
        id: 3
      },
      roles: {
        rule: "repeated",
        type: "BattleRole",
        id: 4
      }
    }
  },
  ComPlayEffect: {
    fields: {
      effectName: {
        type: "string",
        id: 1
      },
      side: {
        type: "int32",
        id: 2
      }
    }
  },
  ComEmitCountdown: {
    fields: {
      reserve: {
        type: "int32",
        id: 1
      }
    }
  },
  ComEffectTips: {
    fields: {
      type: {
        type: "EffectTipsType",
        id: 1
      },
      to: {
        type: "int32",
        id: 2
      }
    }
  },
  EffectTipsType: {
    values: {
      Eff_Success: 0,
      Not_Success: 1,
      Immunity: 2,
      Resist: 3,
      Not_Gain: 4,
      Not_Control: 5,
      Not_Action: 6
    }
  },
  ComChainEffect: {
    fields: {
      roles: {
        rule: "repeated",
        type: "int32",
        id: 1
      }
    }
  },
  Goods: {
    fields: {
      period: {
        type: "int32",
        id: 1
      },
      curPeriod: {
        type: "int32",
        id: 2
      },
      price: {
        type: "int32",
        id: 3
      },
      time: {
        type: "int64",
        id: 4
      }
    }
  },
  CityInfo: {
    fields: {
      like: {
        rule: "repeated",
        type: "int32",
        id: 1
      },
      unlike: {
        rule: "repeated",
        type: "int32",
        id: 2
      },
      count: {
        keyType: "int32",
        type: "int32",
        id: 3
      },
      rtime: {
        type: "int64",
        id: 4
      }
    }
  },
  BagInfo: {
    fields: {
      count: {
        type: "int32",
        id: 1
      },
      price: {
        type: "int32",
        id: 2
      }
    }
  },
  DBCaravan: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      useCount: {
        type: "int32",
        id: 3
      },
      items: {
        keyType: "int32",
        type: "BagInfo",
        id: 4
      },
      goods: {
        keyType: "int32",
        type: "Goods",
        id: 5
      },
      city: {
        keyType: "int32",
        type: "CityInfo",
        id: 6
      },
      lv: {
        type: "int32",
        id: 7
      },
      profit: {
        type: "int64",
        id: 8
      },
      resettime: {
        type: "int64",
        id: 9
      },
      curcity: {
        type: "int32",
        id: 10
      },
      taskid: {
        type: "int32",
        id: 11
      },
      eventid: {
        type: "int32",
        id: 12
      },
      tasktime: {
        type: "int64",
        id: 13
      },
      baglimit: {
        type: "int32",
        id: 14
      }
    }
  },
  CaravanGetListReq: {
    fields: {}
  },
  CaravanGetListResp: {
    fields: {
      data: {
        type: "DBCaravan",
        id: 1
      }
    }
  },
  CaravanBuyOrSellReq: {
    fields: {
      city: {
        type: "int32",
        id: 1
      },
      items: {
        keyType: "int32",
        type: "int32",
        id: 2
      },
      isBuy: {
        type: "bool",
        id: 3
      }
    }
  },
  CaravanBuyOrSellResp: {
    fields: {
      data: {
        type: "DBCaravan",
        id: 1
      }
    }
  },
  CaravanGotoCityReq: {
    fields: {
      city: {
        type: "int32",
        id: 1
      },
      ticket: {
        type: "int32",
        id: 2
      }
    }
  },
  CaravanGotoCityResp: {
    fields: {
      data: {
        type: "DBCaravan",
        id: 1
      },
      newtask: {
        type: "bool",
        id: 2
      }
    }
  },
  CaravanGetStoryReq: {
    fields: {
      cid: {
        type: "int32",
        id: 1
      },
      citystory: {
        type: "int32",
        id: 2
      }
    }
  },
  CaravanGetStoryResp: {
    fields: {
      data: {
        type: "DBCaravan",
        id: 1
      },
      bSuccess: {
        type: "bool",
        id: 2
      }
    }
  },
  CaravanTaskCompletePush: {
    fields: {
      data: {
        type: "DBCaravan",
        id: 1
      },
      bSuccess: {
        type: "bool",
        id: 2
      },
      reward: {
        rule: "repeated",
        type: "UserAssets",
        id: 3
      }
    }
  },
  ChatChannel: {
    values: {
      World: 0,
      Union: 1,
      Private: 2,
      CrossServer: 3,
      System: 4
    }
  },
  ChatType: {
    values: {
      Text: 0,
      Moonfantasy: 1,
      Share: 2,
      HeroShare: 3,
      EquipmentShare: 4,
      ItemShare: 5,
      Parkour: 6
    }
  },
  DBChat: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      channel: {
        type: "ChatChannel",
        id: 2
      },
      ctype: {
        type: "ChatType",
        id: 3
      },
      suid: {
        type: "string",
        id: 4
      },
      slv: {
        type: "int32",
        id: 5
      },
      ruid: {
        type: "string",
        id: 6
      },
      channelId: {
        type: "int32",
        id: 7
      },
      unionId: {
        type: "string",
        id: 8
      },
      stag: {
        type: "string",
        id: 9
      },
      avatar: {
        type: "string",
        id: 10
      },
      uname: {
        type: "string",
        id: 11
      },
      content: {
        type: "string",
        id: 12
      },
      ctime: {
        type: "int64",
        id: 13
      },
      appendInt: {
        type: "int64",
        id: 14
      },
      appendStr: {
        type: "string",
        id: 15
      },
      appendBool: {
        type: "string",
        id: 16
      },
      appendBytes: {
        type: "bytes",
        id: 17
      },
      display: {
        type: "bool",
        id: 18
      },
      appendStrs: {
        rule: "repeated",
        type: "string",
        id: 19
      }
    }
  },
  ChatMessagePush: {
    fields: {
      chat: {
        type: "DBChat",
        id: 1
      }
    }
  },
  ChatCrossChannelReq: {
    fields: {}
  },
  ChatCrossChannelResp: {
    fields: {
      channelId: {
        type: "int32",
        id: 1
      }
    }
  },
  ChatChanageChannelReq: {
    fields: {
      channelId: {
        type: "int32",
        id: 1
      }
    }
  },
  ChatChanageChannelResp: {
    fields: {
      channelId: {
        type: "int32",
        id: 1
      },
      isSucc: {
        type: "bool",
        id: 2
      }
    }
  },
  ChatGetListReq: {
    fields: {
      channel: {
        type: "ChatChannel",
        id: 1
      },
      channelId: {
        type: "int32",
        id: 2
      },
      unionId: {
        type: "string",
        id: 3
      }
    }
  },
  ChatGetListResp: {
    fields: {
      chats: {
        rule: "repeated",
        type: "DBChat",
        id: 1
      }
    }
  },
  ChatSendReq: {
    fields: {
      avatar: {
        type: "string",
        id: 1
      },
      uname: {
        type: "string",
        id: 2
      },
      ulv: {
        type: "int32",
        id: 3
      },
      channel: {
        type: "ChatChannel",
        id: 4
      },
      targetId: {
        type: "string",
        id: 5
      },
      ctype: {
        type: "ChatType",
        id: 6
      },
      content: {
        type: "string",
        id: 7
      },
      appendInt: {
        type: "int64",
        id: 8
      },
      appendStr: {
        type: "string",
        id: 9
      },
      appendBool: {
        type: "string",
        id: 10
      },
      appendBytes: {
        type: "bytes",
        id: 11
      }
    }
  },
  ChatSendResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  DBCombatUser: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      level: {
        keyType: "int32",
        type: "DBCombatLevel",
        id: 2
      }
    }
  },
  DBCombatLevel: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      data: {
        keyType: "string",
        type: "string",
        id: 2
      },
      passmanster: {
        rule: "repeated",
        type: "int32",
        id: 3
      },
      passdrop: {
        rule: "repeated",
        type: "int32",
        id: 4
      },
      pass: {
        type: "bool",
        id: 5
      },
      progress: {
        type: "int32",
        id: 6
      }
    }
  },
  CombatInReq: {
    fields: {
      id: {
        type: "int32",
        id: 1
      }
    }
  },
  CombatInResp: {
    fields: {
      level: {
        type: "DBCombatLevel",
        id: 2
      }
    }
  },
  CombatUpdateLevelReq: {
    fields: {
      level: {
        type: "int32",
        id: 1
      },
      data: {
        keyType: "string",
        type: "string",
        id: 2
      }
    }
  },
  CombatUpdateLevelResp: {
    fields: {
      succ: {
        type: "bool",
        id: 1
      },
      level: {
        type: "int32",
        id: 2
      }
    }
  },
  CombatChallengeReq: {
    fields: {
      level: {
        type: "int32",
        id: 1
      },
      manster: {
        type: "int32",
        id: 2
      },
      battle: {
        type: "BattleFormation",
        id: 3
      }
    }
  },
  CombatChallengeResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      level: {
        type: "int32",
        id: 2
      },
      manster: {
        type: "int32",
        id: 3
      },
      info: {
        type: "BattleInfo",
        id: 4
      }
    }
  },
  CombatChallengeReceiveReq: {
    fields: {
      level: {
        type: "int32",
        id: 1
      },
      manster: {
        type: "int32",
        id: 2
      },
      report: {
        type: "BattleReport",
        id: 3
      }
    }
  },
  CombatChallengeReceiveResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      level: {
        type: "int32",
        id: 2
      },
      pass: {
        type: "bool",
        id: 3
      }
    }
  },
  CombatDropReq: {
    fields: {
      level: {
        type: "int32",
        id: 1
      },
      drop: {
        type: "int32",
        id: 2
      }
    }
  },
  CombatDropResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      atns: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      },
      level: {
        type: "int32",
        id: 3
      },
      pass: {
        type: "bool",
        id: 4
      }
    }
  },
  DBDispatch: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      nb: {
        type: "Noticeboard",
        id: 2
      }
    }
  },
  Noticeboard: {
    fields: {
      lv: {
        type: "int32",
        id: 1
      },
      noticeType: {
        type: "int32",
        id: 2
      },
      tasks: {
        rule: "repeated",
        type: "DispatchTask",
        id: 3
      },
      freeCount: {
        type: "int32",
        id: 4
      },
      refreshCount: {
        type: "int32",
        id: 5
      },
      weekCount: {
        type: "int32",
        id: 6
      },
      taskCount: {
        type: "int32",
        id: 7
      },
      weekReceived: {
        rule: "repeated",
        type: "int32",
        id: 8
      },
      updateTime: {
        type: "int64",
        id: 9
      }
    }
  },
  DispatchTask: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      },
      duration: {
        type: "int64",
        id: 3
      },
      leftTime: {
        type: "int64",
        id: 4
      },
      heroIds: {
        rule: "repeated",
        type: "string",
        id: 5
      },
      exaward: {
        type: "bool",
        id: 6
      }
    }
  },
  DispatchNoticeReq: {
    fields: {}
  },
  DispatchNoticeResp: {
    fields: {
      dispatch: {
        type: "Noticeboard",
        id: 1
      }
    }
  },
  DispatchRefreshReq: {
    fields: {}
  },
  DispatchRefreshResp: {
    fields: {
      freeCount: {
        type: "int32",
        id: 1
      },
      refreshCount: {
        type: "int32",
        id: 2
      }
    }
  },
  DispatchTaskRsp: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      exaward: {
        type: "bool",
        id: 2
      }
    }
  },
  DispatchReceiveReq: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  DispatchReceiveResp: {
    fields: {
      rsp: {
        type: "DispatchTaskRsp",
        id: 1
      }
    }
  },
  DispatchAutoReceiveReq: {
    fields: {}
  },
  DispatchAutoReceiveResp: {
    fields: {
      task: {
        rule: "repeated",
        type: "DispatchTaskRsp",
        id: 1
      }
    }
  },
  DispatchDoReq: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      heroIds: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  DispatchDoResp: {
    fields: {
      isSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  DispatchWeekReciveReq: {
    fields: {
      idx: {
        type: "int32",
        id: 1
      }
    }
  },
  DispatchWeekReciveResp: {
    fields: {
      idx: {
        type: "int32",
        id: 1
      }
    }
  },
  DBEnchant: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      boss: {
        keyType: "int32",
        type: "int64",
        id: 3
      },
      buyCount: {
        type: "int32",
        id: 4
      },
      cTime: {
        type: "int64",
        id: 5
      },
      bossTime: {
        keyType: "int32",
        type: "int32",
        id: 6
      },
      recoveryTime: {
        type: "int64",
        id: 7
      }
    }
  },
  DBEnchantRank: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      bosstype: {
        type: "int32",
        id: 3
      },
      nickname: {
        type: "string",
        id: 4
      },
      lv: {
        type: "int32",
        id: 5
      },
      leadpos: {
        type: "int32",
        id: 6
      },
      line: {
        rule: "repeated",
        type: "LineUp",
        id: 7
      },
      costTime: {
        type: "int32",
        id: 8
      },
      score: {
        type: "int64",
        id: 9
      }
    }
  },
  EnchantGetListReq: {
    fields: {}
  },
  EnchantGetListResp: {
    fields: {
      data: {
        type: "DBEnchant",
        id: 1
      }
    }
  },
  EnchantChallengeReq: {
    fields: {
      bossType: {
        type: "int32",
        id: 1
      },
      battle: {
        type: "BattleFormation",
        id: 2
      }
    }
  },
  EnchantChallengeResp: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      },
      bossType: {
        type: "int32",
        id: 2
      }
    }
  },
  EnchantChallengeOverReq: {
    fields: {
      bossType: {
        type: "int32",
        id: 1
      },
      report: {
        type: "BattleReport",
        id: 2
      },
      score: {
        type: "int64",
        id: 3
      }
    }
  },
  EnchantChallengeOverResp: {
    fields: {
      data: {
        type: "DBEnchant",
        id: 1
      }
    }
  },
  EnchantBuyReq: {
    fields: {
      count: {
        type: "int32",
        id: 1
      }
    }
  },
  EnchantBuyResp: {
    fields: {
      data: {
        type: "DBEnchant",
        id: 1
      }
    }
  },
  EnchantRankListReq: {
    fields: {
      boosType: {
        type: "int32",
        id: 1
      },
      friend: {
        type: "bool",
        id: 2
      }
    }
  },
  EnchantRankListResp: {
    fields: {
      ranks: {
        rule: "repeated",
        type: "DBEnchantRank",
        id: 1
      }
    }
  },
  EquipmentAttributeEntry: {
    fields: {
      Id: {
        type: "int32",
        id: 1
      },
      libraryid: {
        type: "int32",
        id: 2
      },
      AttrName: {
        type: "string",
        id: 3
      },
      Lv: {
        type: "int32",
        id: 4
      },
      Value: {
        type: "int32",
        id: 5
      },
      BaseValue: {
        type: "int32",
        id: 6
      },
      EnchValue: {
        type: "int32",
        id: 7
      }
    }
  },
  EquipmentSkillEntry: {
    fields: {
      Id: {
        type: "int32",
        id: 1
      },
      libraryid: {
        type: "int32",
        id: 2
      },
      AttrName: {
        type: "string",
        id: 3
      },
      SkillId: {
        type: "int32",
        id: 4
      },
      Lv: {
        type: "int32",
        id: 5
      }
    }
  },
  DB_Equipment: {
    fields: {
      Id: {
        type: "string",
        id: 1
      },
      cId: {
        type: "string",
        id: 2
      },
      uId: {
        type: "string",
        id: 3
      },
      heroId: {
        type: "string",
        id: 4
      },
      lv: {
        type: "int32",
        id: 5
      },
      keepFailNum: {
        type: "int32",
        id: 6
      },
      mainEntry: {
        type: "EquipmentAttributeEntry",
        id: 7
      },
      adverbEntry: {
        rule: "repeated",
        type: "EquipmentAttributeEntry",
        id: 8
      },
      overlayNum: {
        type: "uint32",
        id: 9
      },
      isInitialState: {
        type: "bool",
        id: 10
      },
      islock: {
        type: "bool",
        id: 11
      },
      adverbskill: {
        rule: "repeated",
        type: "EquipmentSkillEntry",
        id: 12
      }
    }
  },
  EquipmentGetListReq: {
    fields: {}
  },
  EquipmentGetListResp: {
    fields: {
      Equipments: {
        rule: "repeated",
        type: "DB_Equipment",
        id: 1
      }
    }
  },
  EquipmentChangePush: {
    fields: {
      Equipments: {
        rule: "repeated",
        type: "DB_Equipment",
        id: 1
      }
    }
  },
  EquipmentEquipReq: {
    fields: {
      HeroCardId: {
        type: "string",
        id: 1
      },
      EquipmentId: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  EquipmentEquipResp: {
    fields: {
      Equipments: {
        rule: "repeated",
        type: "DB_Equipment",
        id: 1
      }
    }
  },
  EquipmentUpgradeReq: {
    fields: {
      EquipmentId: {
        type: "string",
        id: 1
      }
    }
  },
  EquipmentUpgradeResp: {
    fields: {
      IsSucc: {
        type: "bool",
        id: 1
      },
      Equipment: {
        rule: "repeated",
        type: "DB_Equipment",
        id: 2
      }
    }
  },
  EquipmentLockReq: {
    fields: {
      EquipmentId: {
        type: "string",
        id: 1
      },
      IsLock: {
        type: "bool",
        id: 2
      }
    }
  },
  EquipmentLockResp: {
    fields: {
      IsSucc: {
        type: "bool",
        id: 1
      },
      EquipmentId: {
        type: "string",
        id: 2
      },
      IsLock: {
        type: "bool",
        id: 3
      }
    }
  },
  EquipmentSellReq: {
    fields: {
      EquipIds: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  EquipmentSellResp: {
    fields: {
      IsSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  EquipmentForgReq: {
    fields: {
      forgid: {
        type: "int32",
        id: 1
      },
      num: {
        type: "int32",
        id: 2
      }
    }
  },
  EquipmentForgResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      reward: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  EquipmentWashReq: {
    fields: {
      eid: {
        type: "string",
        id: 1
      }
    }
  },
  EquipmentWashResp: {
    fields: {
      eid: {
        type: "string",
        id: 1
      },
      adverbEntry: {
        rule: "repeated",
        type: "EquipmentAttributeEntry",
        id: 2
      }
    }
  },
  EquipmentWashConfirmReq: {
    fields: {
      eid: {
        type: "string",
        id: 1
      },
      pids: {
        rule: "repeated",
        type: "int32",
        id: 2
      }
    }
  },
  EquipmentWashConfirmResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  EquipmentEnchReq: {
    fields: {
      eid: {
        type: "string",
        id: 1
      },
      itemid: {
        type: "string",
        id: 2
      },
      index: {
        type: "int32",
        id: 3
      }
    }
  },
  EquipmentEnchResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      Equipment: {
        type: "DB_Equipment",
        id: 2
      }
    }
  },
  CommentState: {
    values: {
      Release: 0,
      Offline: 1
    }
  },
  DBComment: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      heroid: {
        type: "string",
        id: 2
      },
      heroobjid: {
        type: "string",
        id: 3
      },
      uid: {
        type: "string",
        id: 4
      },
      stage: {
        type: "string",
        id: 5
      },
      avatar: {
        type: "string",
        id: 6
      },
      uname: {
        type: "string",
        id: 7
      },
      ulv: {
        type: "int32",
        id: 8
      },
      state: {
        type: "CommentState",
        id: 9
      },
      ctime: {
        type: "int64",
        id: 10
      },
      content: {
        type: "string",
        id: 11
      },
      starlist: {
        type: "int32",
        id: 12
      }
    }
  },
  ForumGetListReq: {
    fields: {
      herocid: {
        type: "string",
        id: 1
      }
    }
  },
  ForumGetListResp: {
    fields: {
      comment: {
        rule: "repeated",
        type: "DBComment",
        id: 1
      }
    }
  },
  ForumReleaseCommentReq: {
    fields: {
      avatar: {
        type: "string",
        id: 1
      },
      uname: {
        type: "string",
        id: 2
      },
      ulv: {
        type: "int32",
        id: 3
      },
      herocid: {
        type: "string",
        id: 4
      },
      herooid: {
        type: "string",
        id: 5
      },
      content: {
        type: "string",
        id: 6
      }
    }
  },
  ForumReleaseCommentResp: {
    fields: {
      comment: {
        type: "DBComment",
        id: 1
      }
    }
  },
  ForumWatchHeroReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      stag: {
        type: "string",
        id: 2
      },
      herocId: {
        type: "string",
        id: 3
      },
      herooId: {
        type: "string",
        id: 4
      }
    }
  },
  ForumWatchHeroResp: {
    fields: {
      hero: {
        type: "DBHero",
        id: 1
      },
      equipID: {
        rule: "repeated",
        type: "DB_Equipment",
        id: 2
      }
    }
  },
  ForumLikeReq: {
    fields: {
      herocid: {
        type: "string",
        id: 1
      },
      cid: {
        type: "string",
        id: 2
      },
      islike: {
        type: "bool",
        id: 3
      }
    }
  },
  ForumLikeResp: {
    fields: {
      cid: {
        type: "string",
        id: 1
      },
      islike: {
        type: "bool",
        id: 2
      },
      issucc: {
        type: "bool",
        id: 3
      }
    }
  },
  DBFriend: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      friendIds: {
        rule: "repeated",
        type: "string",
        id: 2
      },
      applyIds: {
        rule: "repeated",
        type: "string",
        id: 3
      },
      blackIds: {
        rule: "repeated",
        type: "string",
        id: 4
      },
      zanIds: {
        rule: "repeated",
        type: "string",
        id: 5
      },
      getZandIds: {
        rule: "repeated",
        type: "string",
        id: 6
      },
      assistHeroId: {
        type: "string",
        id: 7
      },
      received: {
        type: "int32",
        id: 8
      },
      updateTime: {
        type: "int64",
        id: 9
      },
      hero: {
        type: "DBHero",
        id: 10
      },
      assistScore: {
        type: "int32",
        id: 11
      },
      record: {
        rule: "repeated",
        type: "AssistRecord",
        id: 12
      }
    }
  },
  AssistRecord: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      assistTime: {
        type: "int64",
        id: 2
      },
      assistHeroId: {
        type: "string",
        id: 3
      }
    }
  },
  QiecuoRecord: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      targetId: {
        type: "string",
        id: 2
      },
      status: {
        type: "int32",
        id: 3
      },
      matchId: {
        type: "string",
        id: 4
      },
      timestamp: {
        type: "int64",
        id: 5
      },
      endTime: {
        type: "int64",
        id: 6
      }
    }
  },
  FriendBase: {
    fields: {
      userId: {
        type: "string",
        id: 1
      },
      NickName: {
        type: "string",
        id: 2
      },
      level: {
        type: "int32",
        id: 3
      },
      avatar: {
        type: "string",
        id: 4
      },
      strength: {
        type: "int64",
        id: 5
      },
      serverId: {
        type: "string",
        id: 6
      },
      offlineTime: {
        type: "int64",
        id: 7
      },
      isApplied: {
        type: "bool",
        id: 8
      },
      isZaned: {
        type: "bool",
        id: 9
      },
      isGetZaned: {
        type: "bool",
        id: 10
      },
      heroObjId: {
        type: "string",
        id: 11
      },
      score: {
        type: "int32",
        id: 12
      },
      updateTime: {
        type: "int64",
        id: 13
      }
    }
  },
  FriendListReq: {
    fields: {}
  },
  FriendListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendRandlistReq: {
    fields: {}
  },
  FriendRandlistResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendApplyReq: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      }
    }
  },
  FriendApplyResp: {
    fields: {
      userId: {
        type: "string",
        id: 1
      },
      friendId: {
        type: "string",
        id: 2
      }
    }
  },
  FriendDelReq: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      }
    }
  },
  FriendDelResp: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      },
      userId: {
        type: "string",
        id: 2
      }
    }
  },
  FriendAgreeReq: {
    fields: {
      friendIds: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  FriendAgreeResp: {
    fields: {
      Num: {
        type: "int32",
        id: 1
      }
    }
  },
  FriendRefuseReq: {
    fields: {
      friendIds: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  FriendRefuseResp: {
    fields: {
      Num: {
        type: "int32",
        id: 1
      }
    }
  },
  FriendApplyListReq: {
    fields: {}
  },
  FriendApplyListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendSearchReq: {
    fields: {
      nickName: {
        type: "string",
        id: 1
      }
    }
  },
  FriendSearchResp: {
    fields: {
      friends: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendBlackListReq: {
    fields: {}
  },
  FriendBlackListResp: {
    fields: {
      friends: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendAddBlackReq: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      }
    }
  },
  FriendAddBlackResp: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      },
      userId: {
        type: "string",
        id: 2
      }
    }
  },
  FriendDelBlackReq: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      }
    }
  },
  FriendDelBlackResp: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      },
      userId: {
        type: "string",
        id: 2
      }
    }
  },
  FriendTotalReq: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      }
    }
  },
  FriendTotalResp: {
    fields: {
      friendId: {
        type: "string",
        id: 1
      },
      total: {
        type: "int32",
        id: 2
      }
    }
  },
  FriendZanlistReq: {
    fields: {}
  },
  FriendZanlistResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendZanReq: {
    fields: {
      friendIds: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  FriendZanResp: {
    fields: {
      flag: {
        type: "bool",
        id: 1
      }
    }
  },
  FriendZanreceiveReq: {
    fields: {
      friendIds: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  FriendZanreceiveResp: {
    fields: {
      flag: {
        type: "bool",
        id: 1
      }
    }
  },
  FriendAssistheroReq: {
    fields: {
      heroObjId: {
        type: "string",
        id: 1
      }
    }
  },
  FriendAssistheroResp: {
    fields: {
      heroObjId: {
        type: "string",
        id: 1
      },
      received: {
        type: "int32",
        id: 2
      }
    }
  },
  FriendAssistlistReq: {
    fields: {}
  },
  FriendAssistlistResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      },
      heroObjId: {
        type: "string",
        id: 2
      },
      record: {
        rule: "repeated",
        type: "AssistRecord",
        id: 3
      }
    }
  },
  FriendGetrewardReq: {
    fields: {}
  },
  FriendGetrewardResp: {
    fields: {
      received: {
        type: "int32",
        id: 1
      }
    }
  },
  FriendAssistHeroUpdatePush: {
    fields: {
      friend: {
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendAssistHeroListReq: {
    fields: {}
  },
  FriendAssistHeroListResp: {
    fields: {
      friends: {
        rule: "repeated",
        type: "FriendBase",
        id: 1
      }
    }
  },
  FriendGetRelationReq: {
    fields: {
      targetUid: {
        type: "string",
        id: 1
      }
    }
  },
  FriendGetRelationResp: {
    fields: {
      targetUid: {
        type: "string",
        id: 1
      },
      status: {
        type: "bool",
        id: 2
      }
    }
  },
  FriendQiecuoReq: {
    fields: {
      targetUid: {
        type: "string",
        id: 1
      }
    }
  },
  FriendQiecuoResp: {
    fields: {
      targetUid: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      }
    }
  },
  FriendAcceptReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  FriendAcceptResp: {
    fields: {
      isSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  FriendStopReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  FriendStopResp: {
    fields: {
      isSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  FriendQiecuonotifyPush: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      notifyType: {
        type: "int32",
        id: 2
      }
    }
  },
  GatewayHeartbeatReq: {
    fields: {}
  },
  GatewayHeartbeatResp: {
    fields: {
      timestamp: {
        type: "int64",
        id: 1
      }
    }
  },
  GMCmdReq: {
    fields: {
      Cmod: {
        type: "string",
        id: 1
      }
    }
  },
  GMCmdResp: {
    fields: {
      IsSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  DBGourmetAtlas: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      atlas: {
        keyType: "string",
        type: "int32",
        id: 3
      }
    }
  },
  Cooking: {
    fields: {
      foodType: {
        type: "int32",
        id: 1
      },
      eTime: {
        type: "int64",
        id: 2
      },
      sTime: {
        type: "int64",
        id: 3
      }
    }
  },
  OrderCook: {
    fields: {
      foodType: {
        type: "int32",
        id: 1
      },
      foodCount: {
        type: "int32",
        id: 2
      },
      cookTime: {
        type: "int32",
        id: 3
      }
    }
  },
  DBGourmet: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      cookingFood: {
        type: "Cooking",
        id: 3
      },
      foods: {
        rule: "repeated",
        type: "OrderCook",
        id: 4
      },
      items: {
        rule: "repeated",
        type: "UserAssets",
        id: 5
      },
      skill: {
        keyType: "int32",
        type: "int32",
        id: 6
      },
      specialSkill: {
        keyType: "int32",
        type: "int32",
        id: 7
      },
      orderCostTime: {
        type: "int32",
        id: 8
      },
      ctime: {
        type: "int64",
        id: 9
      },
      totalTime: {
        type: "int32",
        id: 10
      }
    }
  },
  GourmetCreateFoodReq: {
    fields: {
      cid: {
        type: "string",
        id: 1
      },
      material: {
        keyType: "string",
        type: "int32",
        id: 2
      }
    }
  },
  GourmetCreateFoodResp: {
    fields: {
      cid: {
        type: "string",
        id: 1
      },
      firstGet: {
        type: "bool",
        id: 2
      }
    }
  },
  GourmetActivateAtlasReq: {
    fields: {
      cid: {
        type: "string",
        id: 1
      }
    }
  },
  GourmetActivateAtlasResp: {
    fields: {
      atlas: {
        keyType: "string",
        type: "int32",
        id: 1
      }
    }
  },
  GourmetAtlasReq: {
    fields: {}
  },
  GourmetAtlasResp: {
    fields: {
      atlas: {
        keyType: "string",
        type: "int32",
        id: 1
      }
    }
  },
  GourmetGetListReq: {
    fields: {}
  },
  GourmetGetListResp: {
    fields: {
      data: {
        type: "DBGourmet",
        id: 1
      }
    }
  },
  GourmetCreateOrderReq: {
    fields: {
      order: {
        rule: "repeated",
        type: "OrderCook",
        id: 1
      }
    }
  },
  GourmetCreateOrderResp: {
    fields: {
      data: {
        type: "DBGourmet",
        id: 1
      }
    }
  },
  GourmetGetRewardReq: {
    fields: {}
  },
  GourmetGetRewardResp: {
    fields: {
      data: {
        type: "DBGourmet",
        id: 1
      }
    }
  },
  GourmetSkillLvReq: {
    fields: {
      skillType: {
        type: "int32",
        id: 1
      }
    }
  },
  GourmetSkillLvResp: {
    fields: {
      data: {
        type: "DBGourmet",
        id: 1
      }
    }
  },
  GourmetGetRandUserReq: {
    fields: {
      people: {
        type: "int32",
        id: 1
      }
    }
  },
  GourmetGetRandUserResp: {
    fields: {
      user: {
        rule: "repeated",
        type: "DBUser",
        id: 1
      }
    }
  },
  CacheUser: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      SessionId: {
        type: "string",
        id: 2
      },
      ServiceTag: {
        type: "string",
        id: 3
      },
      GatewayServiceId: {
        type: "string",
        id: 4
      },
      ip: {
        type: "string",
        id: 5
      }
    }
  },
  DBUser: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      uuid: {
        type: "string",
        id: 3
      },
      binduid: {
        type: "string",
        id: 4
      },
      name: {
        type: "string",
        id: 5
      },
      sid: {
        type: "string",
        id: 6
      },
      createip: {
        type: "string",
        id: 7
      },
      lastloginip: {
        type: "string",
        id: 8
      },
      ctime: {
        type: "int64",
        id: 9
      },
      logintime: {
        type: "int64",
        id: 10
      },
      gender: {
        type: "int32",
        id: 11
      },
      avatar: {
        type: "string",
        id: 12
      },
      gold: {
        type: "int64",
        id: 13
      },
      exp: {
        type: "int64",
        id: 14
      },
      vipexp: {
        type: "int64",
        id: 15
      },
      starcoin: {
        type: "int64",
        id: 16
      },
      created: {
        type: "bool",
        id: 17
      },
      lv: {
        type: "int32",
        id: 18
      },
      vip: {
        type: "int32",
        id: 19
      },
      diamond: {
        type: "int64",
        id: 20
      },
      title: {
        type: "int32",
        id: 21
      },
      offlinetime: {
        type: "int64",
        id: 22
      },
      figure: {
        type: "int32",
        id: 23
      },
      bgp: {
        type: "string",
        id: 24
      },
      ps: {
        type: "int32",
        id: 25
      },
      lastRecoverPsSec: {
        type: "int64",
        id: 26
      },
      moongold: {
        type: "int32",
        id: 27
      },
      talent1: {
        type: "int32",
        id: 28
      },
      talent2: {
        type: "int32",
        id: 29
      },
      talent3: {
        type: "int32",
        id: 30
      },
      talent4: {
        type: "int32",
        id: 31
      },
      merchantmoney: {
        type: "int32",
        id: 32
      },
      perlist: {
        rule: "repeated",
        type: "string",
        id: 33
      },
      defper1: {
        type: "string",
        id: 34
      },
      defper2: {
        type: "string",
        id: 35
      },
      defper3: {
        type: "string",
        id: 36
      }
    }
  },
  DBUserSetting: {
    fields: {
      uid: {
        type: "string",
        id: 2
      },
      huazhi: {
        type: "uint32",
        id: 3
      },
      kangjuchi: {
        type: "uint32",
        id: 4
      },
      gaoguang: {
        type: "bool",
        id: 5
      },
      wuli: {
        type: "bool",
        id: 6
      },
      music: {
        type: "bool",
        id: 7
      },
      effect: {
        type: "bool",
        id: 8
      },
      guaji: {
        type: "bool",
        id: 9
      },
      fuben: {
        type: "bool",
        id: 10
      },
      tansuo: {
        type: "bool",
        id: 11
      },
      huodong: {
        type: "bool",
        id: 12
      },
      xuanshang: {
        type: "bool",
        id: 13
      },
      saiji: {
        type: "bool",
        id: 14
      }
    }
  },
  DBSign: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      signTime: {
        type: "int64",
        id: 3
      },
      signCount: {
        type: "int32",
        id: 4
      },
      group: {
        type: "int32",
        id: 5
      },
      day: {
        type: "int32",
        id: 6
      },
      puzzle: {
        rule: "repeated",
        type: "int32",
        id: 7
      },
      tips: {
        type: "int32",
        id: 8
      }
    }
  },
  DBGrowtask: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      initTaskList: {
        rule: "repeated",
        type: "Growtask",
        id: 2
      },
      midTaskList: {
        rule: "repeated",
        type: "Growtask",
        id: 3
      },
      highTaskList: {
        rule: "repeated",
        type: "Growtask",
        id: 4
      },
      curTaskType: {
        type: "int32",
        id: 5
      },
      advReceive: {
        type: "int32",
        id: 6
      }
    }
  },
  GrowtaskStatus: {
    values: {
      Lock: 0,
      Ongoing: 1,
      Wait: 2,
      Finish: 3
    }
  },
  Growtask: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      taskType: {
        type: "int32",
        id: 2
      },
      status: {
        type: "GrowtaskStatus",
        id: 3
      },
      fstask: {
        type: "int32",
        id: 4
      },
      preTask: {
        type: "int32",
        id: 5
      }
    }
  },
  GrowtaskListReq: {
    fields: {
      taskType: {
        type: "int32",
        id: 1
      }
    }
  },
  GrowtaskListResp: {
    fields: {
      taskList: {
        rule: "repeated",
        type: "Growtask",
        id: 1
      },
      curTaskType: {
        type: "int32",
        id: 2
      },
      advReceive: {
        type: "int32",
        id: 3
      },
      curTaskId: {
        type: "int32",
        id: 4
      }
    }
  },
  GrowtaskReceiveReq: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  GrowtaskReceiveResp: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  GrowtaskAdvReceiveReq: {
    fields: {
      taskType: {
        type: "int32",
        id: 1
      }
    }
  },
  GrowtaskAdvReceiveResp: {
    fields: {
      taskType: {
        type: "int32",
        id: 1
      }
    }
  },
  HeroInfoReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      heroId: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  HeroInfoResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      base: {
        rule: "repeated",
        type: "DBHero",
        id: 2
      }
    }
  },
  HeroListReq: {
    fields: {}
  },
  HeroListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "DBHero",
        id: 1
      }
    }
  },
  MapStringInt32: {
    fields: {
      Key: {
        type: "string",
        id: 1
      },
      Value: {
        type: "int32",
        id: 2
      }
    }
  },
  HeroStrengthenUplvReq: {
    fields: {
      heroObjID: {
        type: "string",
        id: 1
      },
      item: {
        keyType: "string",
        type: "int32",
        id: 2
      }
    }
  },
  HeroStrengthenUplvResp: {
    fields: {
      hero: {
        type: "DBHero",
        id: 1
      }
    }
  },
  HeroStrengthenUpStarReq: {
    fields: {
      heroObjID: {
        type: "string",
        id: 1
      }
    }
  },
  HeroStrengthenUpStarResp: {
    fields: {
      hero: {
        type: "DBHero",
        id: 1
      }
    }
  },
  HeroStrengthenUpSkillReq: {
    fields: {
      heroObjID: {
        type: "string",
        id: 1
      },
      item: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  HeroStrengthenUpSkillResp: {
    fields: {
      hero: {
        type: "DBHero",
        id: 1
      }
    }
  },
  HeroAwakenReq: {
    fields: {
      heroObjID: {
        type: "string",
        id: 1
      }
    }
  },
  HeroAwakenResp: {
    fields: {
      hero: {
        type: "DBHero",
        id: 1
      }
    }
  },
  HeroPropertyPush: {
    fields: {
      heroId: {
        type: "string",
        id: 1
      },
      property: {
        keyType: "string",
        type: "int32",
        id: 2
      },
      addProperty: {
        keyType: "string",
        type: "int32",
        id: 3
      }
    }
  },
  HeroLockReq: {
    fields: {
      heroid: {
        type: "string",
        id: 1
      }
    }
  },
  HeroLockResp: {
    fields: {
      hero: {
        type: "DBHero",
        id: 1
      }
    }
  },
  HeroGetSpecifiedReq: {
    fields: {
      heroCoinfigID: {
        type: "string",
        id: 1
      },
      Amount: {
        type: "int32",
        id: 2
      },
      star: {
        type: "int32",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      }
    }
  },
  HeroGetSpecifiedResp: {
    fields: {
      hero: {
        type: "DBHero",
        id: 1
      }
    }
  },
  HeroDrawCardReq: {
    fields: {
      drawType: {
        type: "int32",
        id: 1
      },
      drawCount: {
        type: "int32",
        id: 2
      }
    }
  },
  AtnoData: {
    fields: {
      atno: {
        rule: "repeated",
        type: "UserAtno",
        id: 1
      }
    }
  },
  HeroDrawCardResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "AtnoData",
        id: 1
      }
    }
  },
  HeroChangePush: {
    fields: {
      list: {
        rule: "repeated",
        type: "DBHero",
        id: 1
      }
    }
  },
  HeroDrawCardFloorReq: {
    fields: {}
  },
  HeroDrawCardFloorResp: {
    fields: {
      star4: {
        type: "int32",
        id: 1
      },
      star5: {
        type: "int32",
        id: 2
      },
      onebuy: {
        type: "int32",
        id: 3
      },
      tenbuy: {
        type: "int32",
        id: 4
      }
    }
  },
  HeroFusionReq: {
    fields: {
      heroId: {
        type: "string",
        id: 1
      },
      heros: {
        keyType: "string",
        type: "int32",
        id: 2
      }
    }
  },
  HeroFusionResp: {
    fields: {
      heroid: {
        type: "string",
        id: 1
      }
    }
  },
  HeroTalentListReq: {
    fields: {}
  },
  HeroTalentListResp: {
    fields: {
      telnet: {
        rule: "repeated",
        type: "DBHeroTalent",
        id: 1
      }
    }
  },
  HeroTalentLearnReq: {
    fields: {
      talentID: {
        type: "int32",
        id: 1
      },
      objId: {
        type: "string",
        id: 2
      },
      heroid: {
        type: "string",
        id: 3
      }
    }
  },
  HeroTalentLearnResp: {
    fields: {
      telnet: {
        type: "DBHeroTalent",
        id: 1
      },
      talentID: {
        type: "int32",
        id: 2
      }
    }
  },
  HeroTalentResetReq: {
    fields: {
      objId: {
        type: "string",
        id: 1
      }
    }
  },
  HeroTalentResetResp: {
    fields: {
      telnet: {
        type: "DBHeroTalent",
        id: 1
      }
    }
  },
  HeroBuyReq: {
    fields: {
      buyType: {
        type: "int32",
        id: 1
      },
      buyCount: {
        type: "int32",
        id: 2
      }
    }
  },
  HeroBuyResp: {
    fields: {
      IsSucc: {
        type: "bool",
        id: 1
      },
      onebuy: {
        type: "int32",
        id: 3
      },
      tenbuy: {
        type: "int32",
        id: 4
      }
    }
  },
  HeroFirstGetPush: {
    fields: {
      heroId: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  DBHoroscope: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      nodes: {
        keyType: "int32",
        type: "int32",
        id: 2
      },
      lastrest: {
        type: "int64",
        id: 3
      }
    }
  },
  HoroscopeInfoReq: {
    fields: {}
  },
  HoroscopeInfoResp: {
    fields: {
      info: {
        type: "DBHoroscope",
        id: 1
      }
    }
  },
  HoroscopeUpgradeReq: {
    fields: {
      nid: {
        type: "int32",
        id: 1
      }
    }
  },
  HoroscopeUpgradeResp: {
    fields: {
      nid: {
        type: "int32",
        id: 1
      },
      lv: {
        type: "int32",
        id: 2
      }
    }
  },
  HoroscopeResetReq: {
    fields: {}
  },
  HoroscopeResetResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      info: {
        type: "DBHoroscope",
        id: 2
      }
    }
  },
  DBHunting: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      boss: {
        keyType: "int32",
        type: "int32",
        id: 3
      },
      buyCount: {
        type: "int32",
        id: 4
      },
      cTime: {
        type: "int64",
        id: 5
      },
      bossTime: {
        keyType: "string",
        type: "int32",
        id: 6
      },
      recoveryTime: {
        type: "int64",
        id: 7
      }
    }
  },
  DBHuntingRank: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      difficulty: {
        type: "int32",
        id: 3
      },
      bosstype: {
        type: "int32",
        id: 4
      },
      nickname: {
        type: "string",
        id: 5
      },
      icon: {
        type: "string",
        id: 6
      },
      lv: {
        type: "int32",
        id: 7
      },
      leadpos: {
        type: "int32",
        id: 8
      },
      line: {
        rule: "repeated",
        type: "LineUp",
        id: 9
      },
      costTime: {
        type: "int32",
        id: 10
      }
    }
  },
  HuntingGetListReq: {
    fields: {}
  },
  HuntingGetListResp: {
    fields: {
      data: {
        type: "DBHunting",
        id: 1
      }
    }
  },
  HuntingChallengeReq: {
    fields: {
      bossType: {
        type: "int32",
        id: 1
      },
      difficulty: {
        type: "int32",
        id: 2
      },
      battle: {
        type: "BattleFormation",
        id: 3
      }
    }
  },
  HuntingChallengeResp: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      },
      bossType: {
        type: "int32",
        id: 2
      },
      difficulty: {
        type: "int32",
        id: 3
      }
    }
  },
  HuntingChallengeOverReq: {
    fields: {
      bossType: {
        type: "int32",
        id: 1
      },
      difficulty: {
        type: "int32",
        id: 2
      },
      report: {
        type: "BattleReport",
        id: 3
      }
    }
  },
  HuntingChallengeOverResp: {
    fields: {
      data: {
        type: "DBHunting",
        id: 1
      }
    }
  },
  HuntingBuyReq: {
    fields: {
      count: {
        type: "int32",
        id: 1
      }
    }
  },
  HuntingBuyResp: {
    fields: {
      data: {
        type: "DBHunting",
        id: 1
      }
    }
  },
  HuntingRankListReq: {
    fields: {
      boosType: {
        type: "int32",
        id: 1
      },
      friend: {
        type: "bool",
        id: 2
      }
    }
  },
  HuntingRankListResp: {
    fields: {
      ranks: {
        rule: "repeated",
        type: "DBHuntingRank",
        id: 1
      }
    }
  },
  DB_UserItemData: {
    fields: {
      gridId: {
        type: "string",
        id: 1
      },
      uId: {
        type: "string",
        id: 2
      },
      itemId: {
        type: "string",
        id: 3
      },
      amount: {
        type: "uint32",
        id: 4
      },
      cTime: {
        type: "int64",
        id: 5
      },
      eTime: {
        type: "int64",
        id: 6
      },
      isNewItem: {
        type: "bool",
        id: 7
      },
      lastopt: {
        type: "int64",
        id: 8
      }
    }
  },
  ItemsGetlistReq: {
    fields: {
      IType: {
        type: "int32",
        id: 1
      }
    }
  },
  ItemsGetlistResp: {
    fields: {
      Grids: {
        rule: "repeated",
        type: "DB_UserItemData",
        id: 1
      }
    }
  },
  ItemsChangePush: {
    fields: {
      Grids: {
        rule: "repeated",
        type: "DB_UserItemData",
        id: 1
      }
    }
  },
  ItemsUseItemReq: {
    fields: {
      GridId: {
        type: "string",
        id: 1
      },
      Amount: {
        type: "uint32",
        id: 2
      },
      Select: {
        type: "int32",
        id: 3
      }
    }
  },
  ItemsUseItemResp: {
    fields: {
      GridId: {
        type: "string",
        id: 1
      },
      Amount: {
        type: "uint32",
        id: 2
      },
      issucc: {
        type: "bool",
        id: 3
      }
    }
  },
  ItemsSellItemReq: {
    fields: {
      GridId: {
        type: "string",
        id: 1
      },
      ItemId: {
        type: "string",
        id: 2
      },
      Amount: {
        type: "uint32",
        id: 3
      }
    }
  },
  ItemsSellItemResp: {
    fields: {
      GridId: {
        type: "string",
        id: 1
      },
      Amount: {
        type: "uint32",
        id: 2
      },
      issucc: {
        type: "bool",
        id: 3
      }
    }
  },
  ItemsDecomposeReq: {
    fields: {
      GridId: {
        type: "string",
        id: 1
      },
      ItemId: {
        type: "string",
        id: 2
      },
      Amount: {
        type: "uint32",
        id: 3
      }
    }
  },
  ItemsDecomposeResp: {
    fields: {
      GridId: {
        type: "string",
        id: 1
      },
      Amount: {
        type: "uint32",
        id: 2
      },
      issucc: {
        type: "bool",
        id: 3
      }
    }
  },
  ItemsBuyPhysicalReq: {
    fields: {
      Amount: {
        type: "uint32",
        id: 2
      }
    }
  },
  ItemsBuyPhysicalResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      PhysicalBuyNum: {
        type: "int32",
        id: 2
      },
      asets: {
        rule: "repeated",
        type: "UserAssets",
        id: 3
      }
    }
  },
  ItemsSellinbulkReq: {
    fields: {
      grids: {
        rule: "repeated",
        type: "string",
        id: 1
      },
      amount: {
        rule: "repeated",
        type: "uint32",
        id: 2
      }
    }
  },
  ItemsSellinbulkResp: {
    fields: {
      grids: {
        rule: "repeated",
        type: "string",
        id: 1
      },
      amount: {
        rule: "repeated",
        type: "uint32",
        id: 2
      },
      issucc: {
        rule: "repeated",
        type: "bool",
        id: 3
      }
    }
  },
  ItemsBuyUnifiedTicketReq: {
    fields: {
      BuyNum: {
        type: "int32",
        id: 1
      }
    }
  },
  ItemsBuyUnifiedTicketResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      buyunifiedticket: {
        type: "int32",
        id: 2
      },
      recovertimeunifiedticket: {
        type: "int64",
        id: 3
      }
    }
  },
  ItemsRefreshUnifiedTicketReq: {
    fields: {}
  },
  ItemsRefreshUnifiedTicketResp: {
    fields: {}
  },
  ItemsPotionSynthesisReq: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      succnum: {
        type: "int32",
        id: 2
      },
      num: {
        type: "int32",
        id: 3
      }
    }
  },
  ItemsPotionSynthesisResp: {
    fields: {
      succ: {
        type: "bool",
        id: 1
      },
      id: {
        type: "int32",
        id: 2
      },
      num: {
        type: "int32",
        id: 3
      }
    }
  },
  DBLibrary: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      fid: {
        type: "int32",
        id: 3
      },
      herofetter: {
        keyType: "string",
        type: "string",
        id: 4
      },
      prize: {
        keyType: "int32",
        type: "int32",
        id: 5
      },
      storyid: {
        type: "int32",
        id: 6
      },
      fidlv: {
        type: "int32",
        id: 7
      }
    }
  },
  DBHeroFetter: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      heroid: {
        type: "string",
        id: 3
      },
      history: {
        rule: "repeated",
        type: "int32",
        id: 4
      },
      favorlv: {
        type: "int32",
        id: 5
      },
      favorexp: {
        type: "int32",
        id: 6
      },
      lvprize: {
        keyType: "int32",
        type: "int32",
        id: 8
      },
      givecount: {
        type: "int32",
        id: 9
      },
      ctime: {
        type: "int64",
        id: 10
      }
    }
  },
  DBFetterstory: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      feeterTask: {
        keyType: "int32",
        type: "FetterTasks",
        id: 3
      }
    }
  },
  FetterTasks: {
    fields: {
      tasks: {
        rule: "repeated",
        type: "int32",
        id: 1
      }
    }
  },
  FetterTask: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      }
    }
  },
  LibraryGetListReq: {
    fields: {}
  },
  LibraryGetListResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "DBLibrary",
        id: 1
      }
    }
  },
  LibraryGetFetterListReq: {
    fields: {}
  },
  LibraryGetFetterListResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "DBHeroFetter",
        id: 1
      }
    }
  },
  LibraryGetStoryRewardReq: {
    fields: {
      oid: {
        type: "string",
        id: 1
      },
      history: {
        type: "int32",
        id: 2
      }
    }
  },
  LibraryGetStoryRewardResp: {
    fields: {
      data: {
        type: "DBHeroFetter",
        id: 1
      }
    }
  },
  LibraryUseGiftReq: {
    fields: {
      heroid: {
        type: "string",
        id: 1
      },
      items: {
        type: "string",
        id: 2
      },
      counts: {
        type: "int32",
        id: 3
      }
    }
  },
  LibraryUseGiftResp: {
    fields: {
      data: {
        type: "DBHeroFetter",
        id: 1
      }
    }
  },
  LibraryActivationFetterReq: {
    fields: {
      oid: {
        type: "string",
        id: 1
      }
    }
  },
  LibraryActivationFetterResp: {
    fields: {
      data: {
        type: "DBLibrary",
        id: 1
      }
    }
  },
  LibraryChangePush: {
    fields: {
      data: {
        rule: "repeated",
        type: "DBLibrary",
        id: 1
      },
      fetter: {
        rule: "repeated",
        type: "DBHeroFetter",
        id: 2
      }
    }
  },
  LibraryLvRewardReq: {
    fields: {
      oid: {
        type: "string",
        id: 1
      },
      lv: {
        type: "int32",
        id: 2
      }
    }
  },
  LibraryLvRewardResp: {
    fields: {
      data: {
        type: "DBHeroFetter",
        id: 1
      }
    }
  },
  LibraryFetterstoryTaskReq: {
    fields: {
      fetterId: {
        type: "int32",
        id: 1
      }
    }
  },
  LibraryFetterstoryTaskResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "FetterTask",
        id: 1
      }
    }
  },
  LibraryFetterLvUpReq: {
    fields: {
      libOid: {
        type: "string",
        id: 1
      }
    }
  },
  LibraryFetterLvUpResp: {
    fields: {
      data: {
        type: "DBLibrary",
        id: 1
      }
    }
  },
  DBLinestory: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      taskChapter: {
        keyType: "int32",
        type: "TaskChapter",
        id: 3
      }
    }
  },
  TaskChapter: {
    fields: {
      receive: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      },
      taskIds: {
        rule: "repeated",
        type: "int32",
        id: 3
      }
    }
  },
  TaskMain: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      }
    }
  },
  LinestoryChapterReq: {
    fields: {}
  },
  LinestoryChapterResp: {
    fields: {
      taskChapter: {
        keyType: "int32",
        type: "TaskChapter",
        id: 1
      }
    }
  },
  LinestoryMaintaskReq: {
    fields: {
      chapterId: {
        type: "int32",
        id: 1
      }
    }
  },
  LinestoryMaintaskResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "TaskMain",
        id: 1
      }
    }
  },
  LinestoryReceiveReq: {
    fields: {
      chapterId: {
        type: "int32",
        id: 1
      }
    }
  },
  LinestoryReceiveResp: {
    fields: {
      chapterId: {
        type: "int32",
        id: 1
      },
      userAssets: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  DBMailData: {
    fields: {
      ObjId: {
        type: "string",
        id: 1
      },
      Uid: {
        type: "string",
        id: 2
      },
      Title: {
        type: "string",
        id: 3
      },
      Contex: {
        type: "string",
        id: 4
      },
      CreateTime: {
        type: "uint64",
        id: 5
      },
      DueTime: {
        type: "uint64",
        id: 6
      },
      Check: {
        type: "bool",
        id: 7
      },
      Reward: {
        type: "bool",
        id: 8
      },
      Items: {
        rule: "repeated",
        type: "UserAssets",
        id: 9
      },
      Cid: {
        type: "string",
        id: 10
      },
      Param: {
        rule: "repeated",
        type: "string",
        id: 11
      }
    }
  },
  MailGetListReq: {
    fields: {}
  },
  MailGetListResp: {
    fields: {
      Mails: {
        rule: "repeated",
        type: "DBMailData",
        id: 1
      }
    }
  },
  MailReadMailReq: {
    fields: {
      ObjID: {
        type: "string",
        id: 1
      }
    }
  },
  MailReadMailResp: {
    fields: {
      Mail: {
        type: "DBMailData",
        id: 1
      }
    }
  },
  MailGetUserMailAttachmentReq: {
    fields: {
      ObjID: {
        type: "string",
        id: 1
      }
    }
  },
  MailGetUserMailAttachmentResp: {
    fields: {
      Mail: {
        type: "DBMailData",
        id: 1
      }
    }
  },
  MailDelMailReq: {
    fields: {
      ObjID: {
        type: "string",
        id: 1
      }
    }
  },
  MailDelMailResp: {
    fields: {
      ObjID: {
        type: "string",
        id: 1
      }
    }
  },
  MailGetNewMailPush: {
    fields: {
      Mail: {
        type: "DBMailData",
        id: 1
      }
    }
  },
  MailGetAllMailAttachmentReq: {
    fields: {}
  },
  MailGetAllMailAttachmentResp: {
    fields: {
      res: {
        rule: "repeated",
        type: "UserAssets",
        id: 1
      },
      ids: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  MailDelAllMailReq: {
    fields: {}
  },
  MailDelAllMailResp: {
    fields: {
      Mails: {
        rule: "repeated",
        type: "DBMailData",
        id: 1
      }
    }
  },
  PillarState: {
    values: {
      NoUse: 0,
      Useing: 1,
      Receive: 2
    }
  },
  DBPillar: {
    fields: {
      index: {
        type: "int32",
        id: 1
      },
      isunlock: {
        type: "bool",
        id: 2
      },
      state: {
        type: "PillarState",
        id: 3
      },
      hero: {
        type: "string",
        id: 4
      },
      start: {
        type: "int64",
        id: 5
      },
      end: {
        type: "int64",
        id: 6
      },
      lastbill: {
        type: "int64",
        id: 7
      },
      reward: {
        type: "int32",
        id: 8
      }
    }
  },
  DBMartialhall: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      lv: {
        type: "int32",
        id: 3
      },
      pillar1: {
        type: "DBPillar",
        id: 4
      },
      pillar2: {
        type: "DBPillar",
        id: 5
      },
      pillar3: {
        type: "DBPillar",
        id: 6
      },
      pillar4: {
        type: "DBPillar",
        id: 7
      },
      pillar5: {
        type: "DBPillar",
        id: 8
      }
    }
  },
  MartialhallInfoReq: {
    fields: {}
  },
  MartialhallInfoResp: {
    fields: {
      info: {
        type: "DBMartialhall",
        id: 1
      }
    }
  },
  MartialhallPracticeReq: {
    fields: {
      pillar: {
        type: "int32",
        id: 1
      },
      hero: {
        type: "string",
        id: 2
      },
      time: {
        type: "int32",
        id: 3
      }
    }
  },
  MartialhallPracticeResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      info: {
        type: "DBMartialhall",
        id: 2
      }
    }
  },
  MartialhallReceiveReq: {
    fields: {
      pillar: {
        type: "int32",
        id: 1
      }
    }
  },
  MartialhallReceiveResp: {
    fields: {
      pillar: {
        type: "int32",
        id: 1
      }
    }
  },
  MartialhallUpgradeReq: {
    fields: {}
  },
  MartialhallUpgradeResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      info: {
        type: "DBMartialhall",
        id: 2
      }
    }
  },
  MartialhallUnLockReq: {
    fields: {
      pillar: {
        type: "int32",
        id: 1
      }
    }
  },
  MartialhallUnLockResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      info: {
        type: "DBMartialhall",
        id: 2
      }
    }
  },
  DBMline: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      cType: {
        type: "int32",
        id: 3
      },
      chapterId: {
        type: "int32",
        id: 4
      },
      stageId: {
        type: "int32",
        id: 5
      },
      star: {
        keyType: "int32",
        type: "int32",
        id: 6
      },
      award: {
        keyType: "int32",
        type: "bool",
        id: 7
      },
      ps: {
        keyType: "int32",
        type: "int32",
        id: 8
      }
    }
  },
  MlineGetListReq: {
    fields: {
      cType: {
        type: "int32",
        id: 1
      }
    }
  },
  MlineGetListResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "DBMline",
        id: 1
      }
    }
  },
  MlineGetRewardReq: {
    fields: {
      cId: {
        type: "int32",
        id: 1
      },
      star: {
        type: "int32",
        id: 2
      }
    }
  },
  MlineGetRewardResp: {
    fields: {
      data: {
        type: "DBMline",
        id: 1
      },
      reward: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  MlineChallengeReq: {
    fields: {
      stageId: {
        type: "int32",
        id: 1
      },
      battle: {
        type: "BattleFormation",
        id: 2
      }
    }
  },
  MlineChallengeResp: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      },
      stageId: {
        type: "int32",
        id: 2
      }
    }
  },
  MlineChallengeOverReq: {
    fields: {
      stageId: {
        type: "int32",
        id: 1
      },
      report: {
        type: "BattleReport",
        id: 3
      }
    }
  },
  MlineChallengeOverResp: {
    fields: {
      data: {
        type: "DBMline",
        id: 1
      },
      reward: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  MlineCleanStageReq: {
    fields: {
      stageId: {
        type: "int32",
        id: 1
      }
    }
  },
  MlineCleanStageResp: {
    fields: {
      stageId: {
        type: "int32",
        id: 1
      },
      reward: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  UserInfo: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      }
    }
  },
  DBMoonFantasy: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      monster: {
        type: "string",
        id: 3
      },
      ctime: {
        type: "int64",
        id: 4
      },
      join: {
        rule: "repeated",
        type: "UserInfo",
        id: 5
      },
      numup: {
        type: "int32",
        id: 6
      },
      unitmup: {
        type: "int32",
        id: 7
      },
      expir: {
        type: "int64",
        id: 8
      },
      record: {
        keyType: "string",
        type: "int32",
        id: 9
      }
    }
  },
  DBUserMFantasy: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      triggerNum: {
        type: "int32",
        id: 3
      },
      buyNum: {
        type: "int32",
        id: 5
      },
      lastTrigger: {
        type: "int64",
        id: 6
      },
      lastrtickettime: {
        type: "int64",
        id: 7
      }
    }
  },
  RPCTargetMFReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      boosid: {
        type: "string",
        id: 2
      }
    }
  },
  MoonfantasyGetListReq: {
    fields: {}
  },
  MoonfantasyGetListResp: {
    fields: {
      battleNum: {
        type: "int32",
        id: 1
      },
      buyNum: {
        type: "int32",
        id: 2
      },
      dfantasys: {
        rule: "repeated",
        type: "DBMoonFantasy",
        id: 3
      }
    }
  },
  MoonfantasyTriggerPush: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      mid: {
        type: "string",
        id: 2
      },
      monster: {
        type: "string",
        id: 3
      }
    }
  },
  MoonfantasyAskReq: {
    fields: {
      mid: {
        type: "string",
        id: 1
      }
    }
  },
  MoonfantasyAskResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      info: {
        type: "DBMoonFantasy",
        id: 2
      }
    }
  },
  MoonfantasyBattleReq: {
    fields: {
      mid: {
        type: "string",
        id: 1
      },
      battle: {
        type: "BattleFormation",
        id: 2
      }
    }
  },
  MoonfantasyBattleResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      mid: {
        type: "string",
        id: 2
      },
      info: {
        type: "BattleInfo",
        id: 3
      }
    }
  },
  MoonfantasyReceiveReq: {
    fields: {
      bid: {
        type: "string",
        id: 2
      },
      mid: {
        type: "string",
        id: 3
      },
      report: {
        type: "BattleReport",
        id: 4
      }
    }
  },
  MoonfantasyReceiveResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  MoonfantasyBuyReq: {
    fields: {
      BuyNum: {
        type: "int32",
        id: 1
      }
    }
  },
  MoonfantasyBuyResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      BattleNum: {
        type: "int32",
        id: 2
      }
    }
  },
  DBSystemNotify: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      title: {
        type: "string",
        id: 2
      },
      content: {
        type: "string",
        id: 3
      },
      istop: {
        type: "bool",
        id: 4
      },
      ctime: {
        type: "int64",
        id: 5
      },
      rtime: {
        type: "int64",
        id: 6
      }
    }
  },
  NotifyErrorNotifyPush: {
    fields: {
      ReqMainType: {
        type: "string",
        id: 1
      },
      ReqSubType: {
        type: "string",
        id: 2
      },
      Code: {
        type: "ErrorCode",
        id: 3
      },
      arg: {
        type: "google.protobuf.Any",
        id: 4
      },
      err: {
        type: "ErrorData",
        id: 5
      }
    }
  },
  NotifyGetListReq: {
    fields: {}
  },
  NotifyGetListResp: {
    fields: {
      LastReadTime: {
        type: "int64",
        id: 1
      },
      SysNotify: {
        rule: "repeated",
        type: "DBSystemNotify",
        id: 2
      }
    }
  },
  DBOldtimes: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      chapters: {
        rule: "repeated",
        type: "Chapter",
        id: 2
      }
    }
  },
  Chapter: {
    fields: {
      cid: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      },
      received: {
        type: "int32",
        id: 3
      },
      levels: {
        rule: "repeated",
        type: "Level",
        id: 4
      }
    }
  },
  Level: {
    fields: {
      lid: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      }
    }
  },
  OldtimesGetallReq: {
    fields: {}
  },
  OldtimesGetallResp: {
    fields: {
      data: {
        type: "DBOldtimes",
        id: 1
      }
    }
  },
  OldtimesEnterReq: {
    fields: {
      chapterId: {
        type: "int32",
        id: 1
      },
      levelId: {
        type: "int32",
        id: 2
      }
    }
  },
  OldtimesEnterResp: {
    fields: {
      code: {
        type: "int32",
        id: 1
      }
    }
  },
  OldtimesFinishReq: {
    fields: {
      chapterId: {
        type: "int32",
        id: 1
      },
      levelId: {
        type: "int32",
        id: 2
      }
    }
  },
  OldtimesFinishResp: {
    fields: {
      code: {
        type: "int32",
        id: 1
      }
    }
  },
  OldtimesReceiveReq: {
    fields: {
      chapterId: {
        type: "int32",
        id: 1
      }
    }
  },
  OldtimesReceiveResp: {
    fields: {
      code: {
        type: "int32",
        id: 1
      }
    }
  },
  DBPagoda: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      pagodaId: {
        type: "int32",
        id: 3
      },
      reward: {
        keyType: "int32",
        type: "bool",
        id: 4
      },
      type: {
        type: "int32",
        id: 5
      },
      complete: {
        type: "bool",
        id: 6
      },
      passCheckID: {
        type: "int32",
        id: 7
      },
      vipPassCheckID: {
        type: "int32",
        id: 8
      },
      data: {
        keyType: "int32",
        type: "int32",
        id: 9
      }
    }
  },
  DBPagodaRecord: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      pagodaId: {
        type: "int32",
        id: 3
      },
      type: {
        type: "int32",
        id: 4
      },
      nickname: {
        type: "string",
        id: 5
      },
      icon: {
        type: "string",
        id: 6
      },
      lv: {
        type: "int32",
        id: 7
      },
      leadpos: {
        type: "int32",
        id: 8
      },
      line: {
        rule: "repeated",
        type: "LineUp",
        id: 9
      },
      costTime: {
        type: "int32",
        id: 10
      },
      tab: {
        type: "int32",
        id: 11
      }
    }
  },
  PagodaGetListReq: {
    fields: {}
  },
  PagodaGetListResp: {
    fields: {
      data: {
        type: "DBPagoda",
        id: 1
      }
    }
  },
  PagodaGetRewardReq: {
    fields: {
      id: {
        type: "int32",
        id: 1
      }
    }
  },
  PagodaGetRewardResp: {
    fields: {
      data: {
        type: "DBPagoda",
        id: 1
      }
    }
  },
  PagodaChallengeReq: {
    fields: {
      cid: {
        type: "int32",
        id: 1
      },
      battle: {
        type: "BattleFormation",
        id: 3
      }
    }
  },
  PagodaChallengeResp: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      },
      cid: {
        type: "int32",
        id: 2
      }
    }
  },
  PagodaChallengeOverReq: {
    fields: {
      cid: {
        type: "int32",
        id: 1
      },
      report: {
        type: "BattleReport",
        id: 3
      }
    }
  },
  PagodaChallengeOverResp: {
    fields: {
      data: {
        type: "DBPagoda",
        id: 1
      }
    }
  },
  PagodaRankListReq: {
    fields: {
      cid: {
        type: "int32",
        id: 1
      },
      friend: {
        type: "bool",
        id: 2
      }
    }
  },
  PagodaRankListResp: {
    fields: {
      ranks: {
        rule: "repeated",
        type: "DBPagodaRecord",
        id: 1
      }
    }
  },
  PagodaQueryRecordReq: {
    fields: {}
  },
  PagodaQueryRecordResp: {
    fields: {
      data: {
        type: "DBPagodaRecord",
        id: 1
      }
    }
  },
  PagodaActivateReq: {
    fields: {}
  },
  PagodaActivateResp: {
    fields: {
      data: {
        type: "DBPagoda",
        id: 1
      }
    }
  },
  PagodaWarOrderReq: {
    fields: {}
  },
  PagodaWarOrderResp: {
    fields: {
      data: {
        type: "DBPagoda",
        id: 1
      },
      itmes: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  PandataPillarState: {
    values: {
      NoUse: 0,
      Useing: 1,
      Receive: 2
    }
  },
  DBPandataPillar: {
    fields: {
      index: {
        type: "int32",
        id: 1
      },
      isunlock: {
        type: "bool",
        id: 2
      },
      state: {
        type: "PandataPillarState",
        id: 3
      },
      hero: {
        type: "string",
        id: 4
      },
      start: {
        type: "int64",
        id: 5
      },
      end: {
        type: "int64",
        id: 6
      },
      lastbill: {
        type: "int64",
        id: 7
      },
      reward: {
        type: "int32",
        id: 8
      }
    }
  },
  DBPandataTeacher: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      cid: {
        type: "string",
        id: 2
      },
      student: {
        type: "string",
        id: 3
      }
    }
  },
  DBPandataKekan: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      pillar1: {
        type: "DBPandataPillar",
        id: 4
      },
      pillar2: {
        type: "DBPandataPillar",
        id: 5
      },
      pillar3: {
        type: "DBPandataPillar",
        id: 6
      },
      pillarf: {
        type: "DBPandataPillar",
        id: 7
      }
    }
  },
  PandataKekanInfoReq: {
    fields: {}
  },
  PandataKekanInfoResp: {
    fields: {
      info: {
        type: "DBPandataKekan",
        id: 1
      }
    }
  },
  PandataKekanUnLockReq: {
    fields: {}
  },
  PandataKekanUnLockResp: {
    fields: {}
  },
  PandataKekanPracticeReq: {
    fields: {}
  },
  PandataKekanPracticeResp: {
    fields: {}
  },
  PandataKekanLootReq: {
    fields: {}
  },
  PandataKekanLootResp: {
    fields: {}
  },
  PandataKekanExpulsionReq: {
    fields: {}
  },
  PandataKekanExpulsionResp: {
    fields: {}
  },
  PandataKekanReceiveReq: {
    fields: {}
  },
  PandataKekanReceiveResp: {
    fields: {}
  },
  RaceType: {
    values: {
      ordinary: 0,
      prop: 1
    }
  },
  RaceTeamState: {
    values: {
      resting: 0,
      teaming: 1,
      matching: 2,
      raceing: 3
    }
  },
  DBRaceMember: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      },
      mount: {
        type: "string",
        id: 5
      },
      maxhp: {
        type: "int32",
        id: 6
      },
      currhp: {
        type: "int32",
        id: 7
      },
      innermost: {
        type: "int32",
        id: 8
      },
      ready: {
        type: "bool",
        id: 9
      },
      isai: {
        type: "bool",
        id: 10
      },
      isoff: {
        type: "bool",
        id: 11
      }
    }
  },
  DBRaceInvite: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      },
      expired: {
        type: "int64",
        id: 5
      }
    }
  },
  DBParkour: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      mounts: {
        keyType: "string",
        type: "int32",
        id: 3
      },
      dfmount: {
        type: "string",
        id: 4
      },
      state: {
        type: "RaceTeamState",
        id: 5
      },
      currbattid: {
        type: "string",
        id: 6
      },
      integral: {
        type: "int32",
        id: 7
      },
      captainid: {
        type: "string",
        id: 8
      },
      invite: {
        rule: "repeated",
        type: "DBRaceInvite",
        id: 9
      },
      member: {
        rule: "repeated",
        type: "DBRaceMember",
        id: 10
      },
      reward: {
        type: "int32",
        id: 11
      }
    }
  },
  DBRace: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      servicePath: {
        type: "string",
        id: 2
      },
      rtype: {
        type: "RaceType",
        id: 3
      },
      trackid: {
        type: "int32",
        id: 4
      },
      innermost: {
        type: "int32",
        id: 5
      },
      redmember: {
        rule: "repeated",
        type: "DBRaceMember",
        id: 6
      },
      bulemember: {
        rule: "repeated",
        type: "DBRaceMember",
        id: 7
      }
    }
  },
  ParkourInfoReq: {
    fields: {}
  },
  ParkourInfoResp: {
    fields: {
      isopen: {
        type: "bool",
        id: 1
      },
      info: {
        type: "DBParkour",
        id: 2
      },
      recommend: {
        rule: "repeated",
        type: "DBRaceMember",
        id: 3
      }
    }
  },
  ParkourViewPlayerReq: {
    fields: {
      uid: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  ParkourData: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      },
      offlineTime: {
        type: "int64",
        id: 5
      }
    }
  },
  ParkourViewPlayerResp: {
    fields: {
      player: {
        rule: "repeated",
        type: "ParkourData",
        id: 1
      }
    }
  },
  ParkourChangeMtsReq: {
    fields: {
      mtsid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourChangeMtsResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      mtsid: {
        type: "string",
        id: 2
      }
    }
  },
  ParkourInviteReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourInviteResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      team: {
        type: "DBParkour",
        id: 2
      }
    }
  },
  ParkourInviteNoticePush: {
    fields: {
      team: {
        type: "DBParkour",
        id: 1
      },
      state: {
        type: "int32",
        id: 2
      }
    }
  },
  ParkourTeamChanagePush: {
    fields: {
      team: {
        type: "DBParkour",
        id: 1
      }
    }
  },
  ParkourInviteHandleReq: {
    fields: {
      captainid: {
        type: "string",
        id: 1
      },
      state: {
        type: "int32",
        id: 2
      }
    }
  },
  ParkourInviteHandleResp: {
    fields: {
      isSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  ParkourQuitTeamReq: {
    fields: {
      captainid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourQuitTeamResp: {
    fields: {}
  },
  ParkourTeamJoinNoticePush: {
    fields: {
      member: {
        type: "DBRaceMember",
        id: 1
      }
    }
  },
  ParkourTeamQuitNoticePush: {
    fields: {
      member: {
        type: "DBRaceMember",
        id: 1
      }
    }
  },
  ParkourTeamDisbandNoticePush: {
    fields: {}
  },
  ParkourRaceMatchReq: {
    fields: {
      captainid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourRaceMatchResp: {
    fields: {}
  },
  ParkourRaceMatchCancelReq: {
    fields: {
      captainid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourJoinTeamReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourJoinTeamResp: {
    fields: {
      team: {
        type: "DBParkour",
        id: 1
      }
    }
  },
  ParkourRaceMatchCancelResp: {
    fields: {}
  },
  ParkourRaceMatchStartPush: {
    fields: {
      team: {
        type: "DBParkour",
        id: 1
      }
    }
  },
  ParkourRaceMatchCancelPush: {
    fields: {
      team: {
        type: "DBParkour",
        id: 1
      }
    }
  },
  ParkourRaceMatchSuccPush: {
    fields: {
      race: {
        type: "DBRace",
        id: 1
      }
    }
  },
  ParkourReadyReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourReadyResp: {
    fields: {}
  },
  ParkourRaceStartPush: {
    fields: {
      countdown: {
        type: "int32",
        id: 1
      }
    }
  },
  ParkourShotReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourShotResp: {
    fields: {}
  },
  ParkourGetRewardReq: {
    fields: {
      rid: {
        type: "int32",
        id: 1
      }
    }
  },
  ParkourGetRewardResp: {
    fields: {
      info: {
        type: "DBParkour",
        id: 1
      }
    }
  },
  ParkourAvoidReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      distance: {
        type: "float",
        id: 2
      }
    }
  },
  ParkourAvoidResp: {
    fields: {}
  },
  ParkourRecoverHpReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  ParkourRecoverHpResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  ParkourAllSprintsPush: {
    fields: {
      left: {
        type: "int32",
        id: 1
      }
    }
  },
  ParkourInfoChangePush: {
    fields: {
      Info: {
        type: "DBParkour",
        id: 1
      }
    }
  },
  ParkourPlayerHPChanagePush: {
    fields: {
      change: {
        keyType: "string",
        type: "int32",
        id: 1
      }
    }
  },
  ParkourScoreChanagePush: {
    fields: {
      redscore: {
        type: "int32",
        id: 1
      },
      redenergy: {
        type: "int32",
        id: 2
      },
      bluescore: {
        type: "int32",
        id: 3
      },
      blueenergy: {
        type: "int32",
        id: 4
      }
    }
  },
  ParkourRaceOverPush: {
    fields: {
      winside: {
        type: "int32",
        id: 1
      }
    }
  },
  RPCParkourJoinMatchReq: {
    fields: {
      captainid: {
        type: "string",
        id: 1
      },
      member: {
        rule: "repeated",
        type: "DBRaceMember",
        id: 2
      }
    }
  },
  RPCParkourJoinMatchResp: {
    fields: {}
  },
  RPCParkourCancelMatchReq: {
    fields: {
      captainid: {
        type: "string",
        id: 1
      }
    }
  },
  RPCParkourCancelMatchResp: {
    fields: {}
  },
  RPCParkourMatchSuccReq: {
    fields: {
      red: {
        rule: "repeated",
        type: "DBRaceMember",
        id: 2
      },
      bule: {
        rule: "repeated",
        type: "DBRaceMember",
        id: 3
      }
    }
  },
  RPCParkourMatchSuccResp: {
    fields: {}
  },
  RPC_ParkourTrusteeshipReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      }
    }
  },
  RPC_ParkourTrusteeshipResp: {
    fields: {}
  },
  DBPayOrder: {
    fields: {
      orderid: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      productid: {
        type: "string",
        id: 3
      },
      ctime: {
        type: "int64",
        id: 4
      }
    }
  },
  DBUserPay: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      record: {
        keyType: "string",
        type: "int32",
        id: 2
      }
    }
  },
  PayDailyItem: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      buyunm: {
        type: "int32",
        id: 2
      },
      lastrefresh: {
        type: "int64",
        id: 3
      }
    }
  },
  DBPayDaily: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      items: {
        keyType: "int32",
        type: "PayDailyItem",
        id: 2
      }
    }
  },
  PayRecordReq: {
    fields: {}
  },
  PayRecordResp: {
    fields: {
      info: {
        type: "DBUserPay",
        id: 1
      }
    }
  },
  PayInfoReq: {
    fields: {}
  },
  PayInfoResp: {
    fields: {
      info: {
        type: "DBPayDaily",
        id: 1
      }
    }
  },
  PayDailyBuyReq: {
    fields: {
      id: {
        type: "int32",
        id: 1
      }
    }
  },
  PayDailyBuyResp: {
    fields: {
      isucc: {
        type: "bool",
        id: 1
      },
      items: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  PayShippedPush: {
    fields: {
      pid: {
        type: "string",
        id: 1
      },
      orderid: {
        type: "string",
        id: 2
      },
      items: {
        rule: "repeated",
        type: "UserAssets",
        id: 3
      },
      info: {
        type: "DBUserPay",
        id: 4
      }
    }
  },
  PayDeliveryReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      orderid: {
        type: "string",
        id: 2
      },
      productid: {
        type: "string",
        id: 3
      },
      price: {
        type: "int32",
        id: 4
      },
      amount: {
        type: "int32",
        id: 5
      }
    }
  },
  PayDeliveryResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      msg: {
        type: "string",
        id: 2
      },
      data: {
        type: "string",
        id: 3
      }
    }
  },
  DBPracticePillar: {
    fields: {
      index: {
        type: "int32",
        id: 1
      },
      lv: {
        type: "int32",
        id: 2
      },
      isunlock: {
        type: "int32",
        id: 3
      },
      uid: {
        type: "string",
        id: 4
      },
      hero: {
        type: "string",
        id: 5
      },
      teacher: {
        type: "string",
        id: 6
      },
      prop: {
        type: "string",
        id: 7
      },
      start: {
        type: "int64",
        id: 8
      },
      end: {
        type: "int64",
        id: 9
      },
      expend: {
        type: "int64",
        id: 10
      }
    }
  },
  DBPracticeTeacher: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      cid: {
        type: "string",
        id: 2
      },
      student: {
        type: "string",
        id: 3
      }
    }
  },
  DBPracticeStatuer: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      figure: {
        type: "int32",
        id: 2
      },
      name: {
        type: "string",
        id: 3
      },
      unionname: {
        type: "string",
        id: 4
      },
      end: {
        type: "int64",
        id: 5
      }
    }
  },
  DBPracticeRoom: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      gymaction: {
        type: "int32",
        id: 3
      },
      gymrefresh: {
        type: "int32",
        id: 4
      },
      lastrefresh: {
        type: "int64",
        id: 5
      },
      full: {
        keyType: "int32",
        type: "int32",
        id: 6
      },
      knapsack: {
        keyType: "string",
        type: "int32",
        id: 7
      },
      pillar1: {
        type: "DBPracticePillar",
        id: 8
      },
      pillar2: {
        type: "DBPracticePillar",
        id: 9
      },
      pillar3: {
        type: "DBPracticePillar",
        id: 10
      },
      pillarf: {
        type: "DBPracticePillar",
        id: 11
      },
      statuers: {
        rule: "repeated",
        type: "DBPracticeStatuer",
        id: 12
      },
      currnpc: {
        type: "int32",
        id: 13
      },
      npcstate: {
        type: "int32",
        id: 14
      },
      refresh: {
        type: "int64",
        id: 15
      },
      battlenum: {
        type: "int32",
        id: 16
      },
      captain: {
        type: "int32",
        id: 17
      },
      formation: {
        rule: "repeated",
        type: "BattleRole",
        id: 18
      }
    }
  },
  DBPracticeQiecuoInvite: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      timestamp: {
        type: "int64",
        id: 2
      }
    }
  },
  DBPracticeQiecuoRecord: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      targets: {
        rule: "repeated",
        type: "DBPracticeQiecuoInvite",
        id: 3
      },
      status: {
        type: "int32",
        id: 4
      },
      battid: {
        type: "string",
        id: 5
      },
      member: {
        rule: "repeated",
        type: "string",
        id: 6
      }
    }
  },
  PracticeInfoReq: {
    fields: {}
  },
  PracticeInfoResp: {
    fields: {
      info: {
        type: "DBPracticeRoom",
        id: 1
      }
    }
  },
  PracticeRommChangePush: {
    fields: {
      info: {
        type: "DBPracticeRoom",
        id: 1
      }
    }
  },
  PracticeFriendRommReq: {
    fields: {
      fuid: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  PracticeFriendRommResp: {
    fields: {
      infos: {
        keyType: "string",
        type: "DBPracticeRoom",
        id: 1
      }
    }
  },
  PracticeUnLockReq: {
    fields: {
      index: {
        type: "int32",
        id: 1
      }
    }
  },
  PracticeUnLockResp: {
    fields: {
      info: {
        type: "DBPracticeRoom",
        id: 1
      }
    }
  },
  PracticeUpgradeReq: {
    fields: {
      index: {
        type: "int32",
        id: 1
      }
    }
  },
  PracticeUpgradeResp: {
    fields: {
      index: {
        type: "int32",
        id: 1
      },
      lv: {
        type: "int32",
        id: 2
      }
    }
  },
  PracticePracticeReq: {
    fields: {
      index: {
        type: "int32",
        id: 1
      },
      hero: {
        type: "string",
        id: 2
      },
      teacher: {
        type: "string",
        id: 3
      },
      prop: {
        type: "string",
        id: 4
      }
    }
  },
  PracticePracticeResp: {
    fields: {
      pillar: {
        type: "DBPracticePillar",
        id: 1
      }
    }
  },
  PracticeLootReq: {
    fields: {
      friend: {
        type: "string",
        id: 1
      },
      hero: {
        type: "string",
        id: 2
      },
      teacher: {
        type: "string",
        id: 3
      },
      prop: {
        type: "string",
        id: 4
      }
    }
  },
  PracticeLootResp: {
    fields: {
      friend: {
        type: "string",
        id: 1
      },
      pillar: {
        type: "DBPracticePillar",
        id: 2
      }
    }
  },
  PracticeExpulsionReq: {
    fields: {}
  },
  PracticeExpulsionResp: {
    fields: {
      pillar: {
        type: "DBPracticePillar",
        id: 1
      },
      knapsack: {
        keyType: "string",
        type: "int32",
        id: 2
      }
    }
  },
  PracticeBeExpulsionPush: {
    fields: {
      fuid: {
        type: "string",
        id: 1
      },
      pillar: {
        type: "DBPracticePillar",
        id: 2
      },
      knapsack: {
        keyType: "string",
        type: "int32",
        id: 3
      }
    }
  },
  PracticeReceiveReq: {
    fields: {
      index: {
        type: "int32",
        id: 1
      },
      friend: {
        type: "string",
        id: 2
      }
    }
  },
  PracticeReceiveResp: {
    fields: {
      pillar: {
        type: "DBPracticePillar",
        id: 1
      },
      knapsack: {
        keyType: "string",
        type: "int32",
        id: 2
      }
    }
  },
  PracticeEnrolledReq: {
    fields: {
      group: {
        type: "int32",
        id: 1
      },
      hero: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  PracticeEnrolledResp: {
    fields: {
      group: {
        type: "int32",
        id: 1
      },
      hero: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  PracticeJXItemPush: {
    fields: {
      id: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  PracticeGymInfoReq: {
    fields: {}
  },
  PracticeGymInfoResp: {
    fields: {
      lastaction: {
        type: "int32",
        id: 1
      },
      refreshnum: {
        type: "int32",
        id: 2
      }
    }
  },
  PracticeGymRefreshReq: {
    fields: {}
  },
  PracticeGymRefreshResp: {
    fields: {
      lastaction: {
        type: "int32",
        id: 1
      },
      refreshnum: {
        type: "int32",
        id: 2
      }
    }
  },
  PracticeGetGymBuffReq: {
    fields: {
      posture: {
        type: "int32",
        id: 1
      }
    }
  },
  PracticeGetGymBuffResp: {
    fields: {
      buffid: {
        type: "int32",
        id: 1
      }
    }
  },
  PracticeGymConfirmReq: {
    fields: {
      buffid: {
        type: "int32",
        id: 1
      }
    }
  },
  PracticeGymConfirmResp: {
    fields: {
      buffid: {
        type: "int32",
        id: 1
      }
    }
  },
  PracticeQiecuoReq: {
    fields: {
      fid: {
        type: "string",
        id: 1
      }
    }
  },
  PracticeQiecuoResp: {
    fields: {
      fid: {
        type: "string",
        id: 1
      },
      isbattle: {
        type: "bool",
        id: 2
      },
      battle: {
        type: "DBPvpBattle",
        id: 3
      }
    }
  },
  PracticeAcceptReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  PracticeAcceptResp: {
    fields: {
      isSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  PracticeRefuseReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  PracticeRefuseResp: {
    fields: {
      isSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  PracticeQiecuonotifyPush: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      notifyType: {
        type: "int32",
        id: 3
      }
    }
  },
  PracticeNPCBattkleReq: {
    fields: {
      formation: {
        type: "BattleFormation",
        id: 1
      }
    }
  },
  PracticeNPCBattkleResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      info: {
        type: "BattleInfo",
        id: 2
      }
    }
  },
  PracticeNPCBattkleFinishReq: {
    fields: {
      report: {
        type: "BattleReport",
        id: 1
      }
    }
  },
  PracticeNPCBattkleFinishResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  PracticeNPCDialogReq: {
    fields: {}
  },
  PracticeNPCDialogResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  PvpType: {
    values: {
      friends: 0
    }
  },
  PvpState: {
    values: {
      "void": 0,
      ready: 1,
      battle: 2,
      cancel: 3,
      finish: 4
    }
  },
  PvpUserInfo: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      }
    }
  },
  DBPvpBattle: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      servicePath: {
        type: "string",
        id: 2
      },
      ptype: {
        type: "PvpType",
        id: 3
      },
      state: {
        type: "PvpState",
        id: 4
      },
      red: {
        type: "PvpUserInfo",
        id: 5
      },
      blue: {
        type: "PvpUserInfo",
        id: 6
      }
    }
  },
  DBPrivilege: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      cId: {
        type: "string",
        id: 3
      },
      cTime: {
        type: "int64",
        id: 4
      },
      eTime: {
        type: "int64",
        id: 5
      },
      rewardTime: {
        type: "int64",
        id: 6
      }
    }
  },
  PrivilegeList: {
    fields: {
      privilegeID: {
        rule: "repeated",
        type: "int32",
        id: 1
      }
    }
  },
  DBVip: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      reward: {
        keyType: "int32",
        type: "bool",
        id: 3
      },
      privilege: {
        keyType: "int32",
        type: "PrivilegeList",
        id: 4
      },
      cTime: {
        type: "int64",
        id: 5
      },
      rewardTime: {
        type: "int64",
        id: 6
      }
    }
  },
  PrivilegeGetListReq: {
    fields: {}
  },
  PrivilegeGetListResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "DBPrivilege",
        id: 1
      }
    }
  },
  PrivilegeBuyYuekaReq: {
    fields: {
      cID: {
        type: "string",
        id: 1
      }
    }
  },
  PrivilegeBuyYuekaResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "DBPrivilege",
        id: 1
      }
    }
  },
  PrivilegeBuyGiftReq: {
    fields: {
      vipLv: {
        type: "int32",
        id: 1
      }
    }
  },
  PrivilegeBuyGiftResp: {
    fields: {
      data: {
        type: "DBVip",
        id: 1
      }
    }
  },
  PrivilegeVipListReq: {
    fields: {}
  },
  PrivilegeVipListResp: {
    fields: {
      data: {
        type: "DBVip",
        id: 1
      }
    }
  },
  PrivilegeChangePush: {
    fields: {
      privilege: {
        keyType: "int32",
        type: "PrivilegeList",
        id: 1
      }
    }
  },
  PvpListReq: {
    fields: {}
  },
  PvpListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "DBPvpBattle",
        id: 1
      }
    }
  },
  PvpIntoReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  PvpIntoResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      battleid: {
        type: "string",
        id: 2
      },
      info: {
        type: "BattleStateInfo",
        id: 3
      }
    }
  },
  PvpReadyPush: {
    fields: {
      servicePath: {
        type: "string",
        id: 1
      },
      battleid: {
        type: "string",
        id: 2
      },
      red: {
        type: "PvpUserInfo",
        id: 3
      },
      blue: {
        type: "PvpUserInfo",
        id: 4
      },
      countdown: {
        type: "int32",
        id: 5
      }
    }
  },
  PvpLoadCompleteReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  PvpLoadCompleteResp: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      issucc: {
        type: "bool",
        id: 2
      }
    }
  },
  PvpLoadCompleteNoticePush: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      side: {
        type: "int32",
        id: 2
      }
    }
  },
  PvpCancelPush: {
    fields: {
      servicePath: {
        type: "string",
        id: 1
      },
      battleid: {
        type: "string",
        id: 2
      }
    }
  },
  PvpActiveCancelReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  PvpActiveCancelResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  PvpFormationReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      formation: {
        type: "BattleFormation",
        id: 2
      }
    }
  },
  PvpFormationResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      }
    }
  },
  PvpStartPush: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      info: {
        type: "BattleInfo",
        id: 2
      }
    }
  },
  PvpOutCmdPush: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      cmd: {
        rule: "repeated",
        type: "BattleCmd",
        id: 2
      }
    }
  },
  PvpInCmdReq: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      },
      cmd: {
        type: "BattleCmd",
        id: 2
      }
    }
  },
  PvpInCmdResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      battleid: {
        type: "string",
        id: 2
      },
      cmd: {
        type: "BattleCmd",
        id: 3
      }
    }
  },
  PvpFinishPush: {
    fields: {
      battleid: {
        type: "string",
        id: 1
      }
    }
  },
  RPC_PVPTrusteeshipReq: {
    fields: {
      battleid: {
        rule: "repeated",
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      }
    }
  },
  RPC_PVPTrusteeshipResp: {
    fields: {}
  },
  ReddotGetAllReq: {
    fields: {}
  },
  ReddotGetAllResp: {
    fields: {
      reddot: {
        keyType: "int32",
        type: "bool",
        id: 1
      }
    }
  },
  ReddotGetReq: {
    fields: {
      rids: {
        rule: "repeated",
        type: "int32",
        id: 1
      }
    }
  },
  ReddotGetResp: {
    fields: {
      reddot: {
        keyType: "int32",
        type: "bool",
        id: 1
      }
    }
  },
  DBReputation: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      camps: {
        keyType: "int32",
        type: "Camp",
        id: 2
      }
    }
  },
  Camp: {
    fields: {
      reputationLv: {
        type: "int32",
        id: 1
      },
      campAttr: {
        type: "CampAttr",
        id: 2
      },
      nodes: {
        rule: "repeated",
        type: "TalentNode",
        id: 3
      }
    }
  },
  CampAttr: {
    fields: {
      hp: {
        type: "int32",
        id: 1
      },
      attack: {
        type: "int32",
        id: 2
      },
      defense: {
        type: "int32",
        id: 3
      },
      hpPer: {
        type: "int32",
        id: 4
      }
    }
  },
  TalentNode: {
    fields: {
      nid: {
        type: "int32",
        id: 1
      },
      lv: {
        type: "int32",
        id: 2
      },
      status: {
        type: "int32",
        id: 3
      }
    }
  },
  reputationTalenttestReq: {
    fields: {
      raceType: {
        type: "int32",
        id: 1
      },
      friendValue: {
        type: "int32",
        id: 2
      }
    }
  },
  reputationTalenttestResp: {
    fields: {}
  },
  reputationUpgradeReq: {
    fields: {
      nodeId: {
        type: "int32",
        id: 1
      },
      raceType: {
        type: "int32",
        id: 2
      }
    }
  },
  reputationUpgradeResp: {
    fields: {}
  },
  reputationTalentReq: {
    fields: {}
  },
  reputationTalentResp: {
    fields: {
      attrGlobal: {
        type: "CampAttr",
        id: 1
      },
      camp: {
        type: "Camp",
        id: 2
      }
    }
  },
  reputationTalentresetReq: {
    fields: {
      raceType: {
        type: "int32",
        id: 1
      }
    }
  },
  reputationTalentresetResp: {
    fields: {}
  },
  RtaskTestReq: {
    fields: {
      rtaskType: {
        type: "int32",
        id: 1
      },
      params: {
        rule: "repeated",
        type: "int32",
        id: 2
      },
      condiId: {
        type: "int32",
        id: 3
      },
      groupId: {
        type: "int32",
        id: 4
      },
      rtaskIds: {
        type: "string",
        id: 5
      }
    }
  },
  RtaskTestResp: {
    fields: {
      flag: {
        type: "bool",
        id: 1
      },
      rtaskIds: {
        rule: "repeated",
        type: "int32",
        id: 2
      }
    }
  },
  DBServerData: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      serverState: {
        type: "int32",
        id: 2
      },
      disposableLoop: {
        type: "int32",
        id: 3
      },
      fixedLoop: {
        type: "int32",
        id: 4
      },
      seasonType: {
        type: "int32",
        id: 5
      },
      openTime: {
        type: "int64",
        id: 6
      }
    }
  },
  ShopType: {
    values: {
      Null: 0,
      GoldShop: 1,
      DiamondShop: 2,
      PVPShop: 3,
      PVEShop: 4,
      AllianceShop: 5,
      HeroShop: 6,
      SmithyShop: 7
    }
  },
  UserShopData: {
    fields: {
      LastRefreshTime: {
        type: "int64",
        id: 1
      },
      ManualRefreshNum: {
        type: "int32",
        id: 2
      },
      Items: {
        rule: "repeated",
        type: "int32",
        id: 3
      },
      buy: {
        keyType: "int32",
        type: "int32",
        id: 4
      },
      preview: {
        keyType: "int32",
        type: "DB_Equipment",
        id: 5
      }
    }
  },
  DBShop: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      refreshnumgoldShop: {
        type: "int32",
        id: 3
      },
      refreshtimegoldShop: {
        type: "int64",
        id: 4
      },
      goldShop: {
        type: "UserShopData",
        id: 5
      },
      diamondShop: {
        type: "UserShopData",
        id: 6
      },
      pvpShop: {
        type: "UserShopData",
        id: 7
      },
      pveShop: {
        type: "UserShopData",
        id: 8
      },
      allianceShop: {
        type: "UserShopData",
        id: 9
      },
      heroShop: {
        type: "UserShopData",
        id: 10
      },
      smithyShop: {
        type: "UserShopData",
        id: 11
      }
    }
  },
  ShopItem: {
    fields: {
      GoodsId: {
        type: "int32",
        id: 1
      },
      Items: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      },
      Consume: {
        rule: "repeated",
        type: "UserAssets",
        id: 3
      },
      Sale: {
        type: "int32",
        id: 4
      },
      LeftBuyNum: {
        type: "int32",
        id: 5
      },
      preview: {
        type: "DB_Equipment",
        id: 6
      }
    }
  },
  ShopGetListReq: {
    fields: {
      sType: {
        type: "ShopType",
        id: 1
      },
      IsManualRefresh: {
        type: "bool",
        id: 2
      }
    }
  },
  ShopGetListResp: {
    fields: {
      sType: {
        type: "ShopType",
        id: 1
      },
      IsManualRefresh: {
        type: "bool",
        id: 2
      },
      Goods: {
        rule: "repeated",
        type: "ShopItem",
        id: 4
      },
      SurplusRefreshNum: {
        type: "int32",
        id: 5
      }
    }
  },
  ShopBuyReq: {
    fields: {
      ShopType: {
        type: "ShopType",
        id: 1
      },
      GoodsId: {
        type: "int32",
        id: 2
      },
      BuyNum: {
        type: "int32",
        id: 3
      }
    }
  },
  ShopBuyResp: {
    fields: {
      IsSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  Mastery: {
    fields: {
      lv: {
        type: "int32",
        id: 1
      },
      value: {
        type: "int32",
        id: 2
      }
    }
  },
  DBStove: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      lv: {
        type: "int32",
        id: 3
      },
      data: {
        keyType: "int32",
        type: "Mastery",
        id: 4
      },
      skill: {
        keyType: "int32",
        type: "int32",
        id: 5
      },
      forge: {
        keyType: "int32",
        type: "int32",
        id: 6
      },
      temperature: {
        type: "int32",
        id: 7
      },
      recoveTime: {
        type: "int64",
        id: 8
      },
      hit: {
        keyType: "int32",
        type: "int32",
        id: 9
      }
    }
  },
  CustomerInfo: {
    fields: {
      customerId: {
        type: "int32",
        id: 1
      },
      suitId: {
        type: "int32",
        id: 2
      },
      equipCount: {
        type: "int32",
        id: 3
      }
    }
  },
  DBCustomer: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      customers: {
        rule: "repeated",
        type: "CustomerInfo",
        id: 3
      },
      total: {
        type: "int32",
        id: 4
      },
      lastRefreshTime: {
        type: "int64",
        id: 5
      }
    }
  },
  DBAtlas: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      atlas: {
        keyType: "string",
        type: "ForgeList",
        id: 3
      },
      collect: {
        keyType: "string",
        type: "CollectData",
        id: 4
      },
      score: {
        type: "int32",
        id: 5
      },
      award: {
        type: "int32",
        id: 6
      }
    }
  },
  CollectData: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      score: {
        type: "int32",
        id: 2
      },
      time: {
        type: "int64",
        id: 3
      },
      activate: {
        type: "bool",
        id: 4
      }
    }
  },
  ForgeList: {
    fields: {
      data1: {
        type: "ForgeData",
        id: 1
      },
      data2: {
        type: "ForgeData",
        id: 2
      },
      activate: {
        type: "bool",
        id: 3
      }
    }
  },
  ForgeData: {
    fields: {
      forgeCount: {
        type: "int32",
        id: 1
      },
      lv: {
        type: "int32",
        id: 2
      },
      quality: {
        type: "int32",
        id: 3
      },
      score: {
        type: "int32",
        id: 4
      },
      time: {
        type: "int64",
        id: 5
      }
    }
  },
  DBTujianTask: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      tasks: {
        rule: "repeated",
        type: "TujianTask",
        id: 2
      }
    }
  },
  TujianTask: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      received: {
        type: "int32",
        id: 2
      }
    }
  },
  SmithyGetStoveInfoReq: {
    fields: {}
  },
  SmithyGetStoveInfoResp: {
    fields: {
      data: {
        type: "DBStove",
        id: 1
      }
    }
  },
  SmithyForgeEquipReq: {
    fields: {
      reelId: {
        type: "int32",
        id: 1
      },
      lava: {
        type: "int32",
        id: 2
      },
      quality: {
        type: "int32",
        id: 3
      },
      suiteId: {
        type: "int32",
        id: 4
      },
      position: {
        type: "int32",
        id: 5
      },
      hit: {
        keyType: "int32",
        type: "int32",
        id: 6
      },
      count: {
        type: "int32",
        id: 7
      }
    }
  },
  SmithyForgeEquipResp: {
    fields: {
      equip: {
        rule: "repeated",
        type: "DB_Equipment",
        id: 1
      },
      data: {
        type: "DBStove",
        id: 2
      }
    }
  },
  SmithyStoveUpReq: {
    fields: {}
  },
  SmithyStoveUpResp: {
    fields: {
      data: {
        type: "DBStove",
        id: 1
      }
    }
  },
  SmithyRiseReq: {
    fields: {
      itemId: {
        type: "string",
        id: 1
      },
      count: {
        type: "int32",
        id: 2
      }
    }
  },
  SmithyRiseResp: {
    fields: {
      data: {
        type: "DBStove",
        id: 1
      }
    }
  },
  SmithyToolsUpReq: {
    fields: {
      id: {
        type: "int32",
        id: 1
      }
    }
  },
  SmithyToolsUpResp: {
    fields: {
      data: {
        type: "DBStove",
        id: 1
      }
    }
  },
  SmithyCustomerReq: {
    fields: {}
  },
  SmithyCustomerResp: {
    fields: {
      customers: {
        rule: "repeated",
        type: "CustomerInfo",
        id: 1
      }
    }
  },
  SmithySellReq: {
    fields: {
      equipIds: {
        rule: "repeated",
        type: "string",
        id: 1
      },
      customerId: {
        type: "int32",
        id: 2
      }
    }
  },
  SmithySellResp: {
    fields: {
      customerId: {
        type: "int32",
        id: 1
      },
      equipIds: {
        rule: "repeated",
        type: "string",
        id: 2
      },
      customers: {
        rule: "repeated",
        type: "CustomerInfo",
        id: 3
      }
    }
  },
  SmithyRefuseReq: {
    fields: {
      customerId: {
        type: "int32",
        id: 1
      }
    }
  },
  SmithyRefuseResp: {
    fields: {
      customers: {
        rule: "repeated",
        type: "CustomerInfo",
        id: 1
      }
    }
  },
  SmithyAtlasListReq: {
    fields: {}
  },
  SmithyAtlasListResp: {
    fields: {
      data: {
        type: "DBAtlas",
        id: 1
      }
    }
  },
  SmithyAtlasActivateReq: {
    fields: {
      id: {
        type: "string",
        id: 1
      }
    }
  },
  SmithyAtlasActivateResp: {
    fields: {
      data: {
        type: "DBAtlas",
        id: 1
      }
    }
  },
  SmithyAtlasAwardReq: {
    fields: {}
  },
  SmithyAtlasAwardResp: {
    fields: {
      data: {
        type: "DBAtlas",
        id: 1
      },
      res: {
        rule: "repeated",
        type: "UserAssets",
        id: 2
      }
    }
  },
  SmithyTaskAwardReq: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  SmithyTaskAwardResp: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  SmithyTasklistReq: {
    fields: {}
  },
  SmithyTasklistResp: {
    fields: {
      tasks: {
        rule: "repeated",
        type: "TujianTask",
        id: 1
      }
    }
  },
  DBSociaty: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      creater: {
        type: "string",
        id: 2
      },
      name: {
        type: "string",
        id: 3
      },
      icon: {
        type: "string",
        id: 4
      },
      notice: {
        type: "string",
        id: 5
      },
      exp: {
        type: "int32",
        id: 6
      },
      lv: {
        type: "int32",
        id: 7
      },
      isApplyCheck: {
        type: "bool",
        id: 8
      },
      applyLv: {
        type: "int32",
        id: 9
      },
      ctime: {
        type: "int64",
        id: 10
      },
      applyRecord: {
        rule: "repeated",
        type: "ApplyRecord",
        id: 11
      },
      members: {
        rule: "repeated",
        type: "SociatyMember",
        id: 12
      },
      activity: {
        type: "int32",
        id: 13
      },
      accuseTime: {
        type: "int64",
        id: 14
      },
      lastSignCount: {
        type: "int32",
        id: 15
      },
      signIds: {
        rule: "repeated",
        type: "string",
        id: 16
      },
      dismissTime: {
        type: "int64",
        id: 17
      },
      dismissCD: {
        type: "int64",
        id: 18
      }
    }
  },
  ApplyRecord: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      ctime: {
        type: "int64",
        id: 2
      }
    }
  },
  SociatyJob: {
    values: {
      NOJOB: 0,
      MEMBER: 1,
      ADMIN: 2,
      VICEPRESIDENT: 3,
      PRESIDENT: 4
    }
  },
  SociatyMember: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      job: {
        type: "SociatyJob",
        id: 2
      },
      ctime: {
        type: "int64",
        id: 3
      },
      contribution: {
        type: "int32",
        id: 4
      },
      teams: {
        keyType: "int32",
        type: "ChallengeTeam",
        id: 5
      }
    }
  },
  SociatyLog: {
    fields: {
      content: {
        type: "string",
        id: 1
      },
      ctime: {
        type: "int64",
        id: 2
      }
    }
  },
  DBSociatyLog: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      list: {
        rule: "repeated",
        type: "SociatyLog",
        id: 2
      }
    }
  },
  DBSociatyTask: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      taskList: {
        rule: "repeated",
        type: "SociatyTask",
        id: 3
      },
      activityList: {
        rule: "repeated",
        type: "SociatyActivity",
        id: 4
      },
      lastUpdateTime: {
        type: "int64",
        id: 5
      }
    }
  },
  SociatyTask: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      },
      received: {
        type: "int32",
        id: 3
      }
    }
  },
  SociatyActivity: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      }
    }
  },
  DBSociatyRank: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      lv: {
        type: "int32",
        id: 3
      },
      activity: {
        type: "int32",
        id: 4
      },
      ctime: {
        type: "int64",
        id: 5
      }
    }
  },
  ChallengeTeamInfo: {
    fields: {
      heroId: {
        type: "string",
        id: 1
      }
    }
  },
  ChallengeTeam: {
    fields: {
      formation: {
        type: "BattleFormation",
        id: 1
      }
    }
  },
  DBSociatyBossSports: {
    fields: {
      endTime: {
        type: "int64",
        id: 1
      },
      settlementTime: {
        type: "int64",
        id: 2
      },
      uids: {
        rule: "repeated",
        type: "string",
        id: 3
      }
    }
  },
  ChallengeRecord: {
    fields: {
      teams: {
        keyType: "int32",
        type: "ChallengeTeam",
        id: 1
      },
      integral: {
        type: "int64",
        id: 2
      },
      duration: {
        type: "int32",
        id: 3
      },
      rtime: {
        type: "int64",
        id: 4
      }
    }
  },
  ChallengeTask: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      status: {
        type: "int32",
        id: 2
      }
    }
  },
  DBSociatyBossRecord: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      },
      record: {
        rule: "repeated",
        type: "ChallengeRecord",
        id: 4
      },
      total: {
        type: "int64",
        id: 5
      },
      integrals: {
        rule: "repeated",
        type: "int64",
        id: 6
      },
      status: {
        type: "int32",
        id: 7
      },
      tasks: {
        rule: "repeated",
        type: "ChallengeTask",
        id: 8
      }
    }
  },
  SociatyCreateReq: {
    fields: {
      name: {
        type: "string",
        id: 1
      },
      icon: {
        type: "string",
        id: 2
      },
      notice: {
        type: "string",
        id: 3
      },
      isApplyCheck: {
        type: "bool",
        id: 4
      },
      applyLv: {
        type: "int32",
        id: 5
      }
    }
  },
  SociatyCreateResp: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyListFilter: {
    values: {
      ALL: 0,
      CONDI: 1,
      NOAPPLY: 2,
      APPLYING: 3
    }
  },
  SociatyInfo: {
    fields: {
      dbSociaty: {
        type: "DBSociaty",
        id: 1
      },
      master: {
        type: "SociatyMemberInfo",
        id: 2
      }
    }
  },
  SociatyListReq: {
    fields: {
      filter: {
        type: "SociatyListFilter",
        id: 1
      }
    }
  },
  SociatyListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "SociatyInfo",
        id: 1
      }
    }
  },
  SociatySearchReq: {
    fields: {
      name: {
        type: "string",
        id: 1
      }
    }
  },
  SociatySearchResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "DBSociaty",
        id: 1
      }
    }
  },
  SociatySettingReq: {
    fields: {
      icon: {
        type: "string",
        id: 1
      },
      notice: {
        type: "string",
        id: 2
      },
      isApplyCheck: {
        type: "bool",
        id: 3
      },
      applyLv: {
        type: "int32",
        id: 4
      }
    }
  },
  SociatySettingResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyMineReq: {
    fields: {}
  },
  SociatyMineResp: {
    fields: {
      sociaty: {
        type: "DBSociaty",
        id: 1
      },
      master: {
        type: "SociatyMemberInfo",
        id: 2
      }
    }
  },
  SociatyMemberInfo: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      name: {
        type: "string",
        id: 2
      },
      avatar: {
        type: "string",
        id: 3
      },
      lv: {
        type: "int32",
        id: 4
      },
      job: {
        type: "SociatyJob",
        id: 5
      },
      offlineTime: {
        type: "int64",
        id: 6
      }
    }
  },
  SociatyApplyListReq: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyApplyListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "SociatyMemberInfo",
        id: 1
      }
    }
  },
  SociatyApplyReq: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyApplyResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      scoiatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyApplyCancelReq: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyApplyCancelResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyAgreeReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyAgreeResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyRefuseReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyRefuseResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyCancelReq: {
    fields: {}
  },
  SociatyCancelResp: {
    fields: {}
  },
  SociatyQuitReq: {
    fields: {}
  },
  SociatyQuitResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyDismissReq: {
    fields: {
      dismiss: {
        type: "int32",
        id: 1
      }
    }
  },
  SociatyDismissResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyMembersReq: {
    fields: {}
  },
  SociatyMembersResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "SociatyMemberInfo",
        id: 1
      }
    }
  },
  SociatyAssignReq: {
    fields: {
      targetId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyAssignResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      targetId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyDischargeReq: {
    fields: {
      targetId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyDischargeResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      targetId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatySettingJobReq: {
    fields: {
      targetId: {
        type: "string",
        id: 1
      },
      job: {
        type: "SociatyJob",
        id: 2
      }
    }
  },
  SociatySettingJobResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      targetId: {
        type: "string",
        id: 2
      },
      job: {
        type: "SociatyJob",
        id: 3
      }
    }
  },
  SociatyAccuseReq: {
    fields: {}
  },
  SociatyAccuseResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatySignReq: {
    fields: {}
  },
  SociatySignResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyLogReq: {
    fields: {}
  },
  SociatyLogResp: {
    fields: {
      log: {
        type: "DBSociatyLog",
        id: 1
      }
    }
  },
  SociatyTaskListReq: {
    fields: {}
  },
  SociatyTaskListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "SociatyTask",
        id: 1
      }
    }
  },
  SociatyReceiveReq: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  SociatyReceiveResp: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyActivityListReq: {
    fields: {}
  },
  SociatyActivityListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "SociatyActivity",
        id: 1
      }
    }
  },
  SociatyActivityReceiveReq: {
    fields: {
      id: {
        type: "int32",
        id: 1
      }
    }
  },
  SociatyActivityReceiveResp: {
    fields: {
      id: {
        type: "int32",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyRankReq: {
    fields: {
      rankType: {
        type: "int32",
        id: 1
      }
    }
  },
  SociatyRankResp: {
    fields: {
      rank: {
        rule: "repeated",
        type: "DBSociatyRank",
        id: 1
      }
    }
  },
  SociatyPDismissPush: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyPAgreePush: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      sociatyId: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyBMainReq: {
    fields: {}
  },
  SociatyBMainResp: {
    fields: {
      teams: {
        keyType: "int32",
        type: "ChallengeTeam",
        id: 1
      },
      ticket: {
        type: "int32",
        id: 2
      },
      endTime: {
        type: "int64",
        id: 3
      },
      settlementTime: {
        type: "int64",
        id: 4
      },
      total: {
        type: "int64",
        id: 5
      },
      highIntegrals: {
        rule: "repeated",
        type: "int64",
        id: 6
      },
      personalRanking: {
        type: "int64",
        id: 7
      },
      sociatyRanking: {
        type: "int64",
        id: 8
      }
    }
  },
  SociatyBFormationReq: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      teams: {
        keyType: "int32",
        type: "ChallengeTeam",
        id: 2
      }
    }
  },
  SociatyBFormationResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyBChallengeStartReq: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      }
    }
  },
  SociatyBChallengeStartResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      }
    }
  },
  SociatyBChallengeFinishReq: {
    fields: {
      ptype: {
        type: "PlayType",
        id: 1
      },
      report: {
        type: "BattleReport",
        id: 2
      }
    }
  },
  SociatyBChallengeFinishResp: {
    fields: {
      integral: {
        type: "int64",
        id: 1
      }
    }
  },
  SociatyRecommendReq: {
    fields: {
      cate: {
        type: "int32",
        id: 1
      }
    }
  },
  SociatyRecommendResp: {
    fields: {
      teams: {
        keyType: "int32",
        type: "ChallengeTeam",
        id: 1
      }
    }
  },
  SociatyBReceiveReq: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  SociatyBReceiveResp: {
    fields: {
      sociatyId: {
        type: "string",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      }
    }
  },
  SociatyBRankReq: {
    fields: {
      rankType: {
        type: "int32",
        id: 1
      }
    }
  },
  SociatyRankInfo: {
    fields: {
      name: {
        type: "string",
        id: 1
      },
      head: {
        type: "string",
        id: 2
      },
      lv: {
        type: "int32",
        id: 3
      },
      sociatyName: {
        type: "string",
        id: 4
      },
      ranking: {
        type: "int64",
        id: 5
      },
      integral: {
        type: "int64",
        id: 6
      }
    }
  },
  SociatyBRankResp: {
    fields: {
      rank: {
        rule: "repeated",
        type: "SociatyRankInfo",
        id: 1
      }
    }
  },
  SociatyBuyReq: {
    fields: {
      atn: {
        type: "UserAssets",
        id: 1
      },
      buyNum: {
        type: "int32",
        id: 2
      }
    }
  },
  SociatyBuyResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  DBOpenCond: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      cond: {
        keyType: "string",
        type: "int32",
        id: 3
      }
    }
  },
  SysFuncGetListReq: {
    fields: {
      keys: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  SysFuncGetListResp: {
    fields: {
      cond: {
        keyType: "string",
        type: "int32",
        id: 1
      }
    }
  },
  SysFuncActivateReq: {
    fields: {
      cid: {
        type: "string",
        id: 1
      }
    }
  },
  SysFuncActivateResp: {
    fields: {
      cid: {
        type: "string",
        id: 1
      }
    }
  },
  SysFuncOpnePush: {
    fields: {
      cid: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  DBTask: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      dayList: {
        rule: "repeated",
        type: "TaskData",
        id: 4
      },
      weekList: {
        rule: "repeated",
        type: "TaskData",
        id: 5
      },
      achieveList: {
        rule: "repeated",
        type: "TaskData",
        id: 6
      }
    }
  },
  TaskData: {
    fields: {
      taskId: {
        type: "int32",
        id: 3
      },
      tag: {
        type: "int32",
        id: 4
      },
      progress: {
        type: "int32",
        id: 5
      },
      active: {
        type: "int32",
        id: 6
      },
      status: {
        type: "int32",
        id: 7
      },
      received: {
        type: "int32",
        id: 8
      },
      typeId: {
        type: "int32",
        id: 9
      },
      sort: {
        type: "int32",
        id: 10
      }
    }
  },
  DBActivity: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      activityList: {
        rule: "repeated",
        type: "ActivityData",
        id: 3
      }
    }
  },
  ActivityData: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      tag: {
        type: "int32",
        id: 2
      },
      received: {
        type: "int32",
        id: 3
      }
    }
  },
  frtaskIds: {
    fields: {
      rtaskIds: {
        rule: "repeated",
        type: "int32",
        id: 1
      }
    }
  },
  DBRtask: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      frtaskIds: {
        keyType: "int32",
        type: "frtaskIds",
        id: 3
      },
      isReward: {
        type: "bool",
        id: 5
      }
    }
  },
  rtaskData: {
    fields: {
      data: {
        keyType: "int32",
        type: "int32",
        id: 1
      },
      rtype: {
        type: "int32",
        id: 2
      },
      timestamp: {
        type: "int64",
        id: 3
      }
    }
  },
  DBRtaskRecord: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      vals: {
        keyType: "int32",
        type: "rtaskData",
        id: 3
      },
      ctime: {
        type: "int64",
        id: 4
      }
    }
  },
  TaskGetrecordReq: {
    fields: {}
  },
  TaskGetrecordResp: {
    fields: {
      record: {
        type: "DBRtaskRecord",
        id: 1
      }
    }
  },
  TaskSendReq: {
    fields: {
      taskType: {
        type: "int32",
        id: 1
      },
      params: {
        rule: "repeated",
        type: "int32",
        id: 2
      }
    }
  },
  TaskSendResp: {
    fields: {
      isSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  TaskReceiveReq: {
    fields: {
      taskTag: {
        type: "int32",
        id: 1
      },
      id: {
        type: "int32",
        id: 2
      }
    }
  },
  TaskReceiveResp: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  TaskListReq: {
    fields: {
      taskTag: {
        type: "int32",
        id: 1
      }
    }
  },
  TaskListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "TaskData",
        id: 1
      }
    }
  },
  TaskActiveListReq: {
    fields: {
      taskTag: {
        type: "int32",
        id: 1
      }
    }
  },
  TaskActiveListResp: {
    fields: {
      list: {
        rule: "repeated",
        type: "ActivityData",
        id: 1
      },
      active: {
        type: "int32",
        id: 2
      }
    }
  },
  TaskActiveReceiveReq: {
    fields: {
      taskTag: {
        type: "int32",
        id: 1
      },
      id: {
        type: "int32",
        id: 2
      }
    }
  },
  TaskActiveReceiveResp: {
    fields: {
      taskTag: {
        type: "int32",
        id: 1
      },
      id: {
        type: "int32",
        id: 2
      }
    }
  },
  TaskFinishedPush: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  TaskActiveReceivePush: {
    fields: {
      taskTag: {
        type: "int32",
        id: 1
      },
      id: {
        type: "int32",
        id: 2
      }
    }
  },
  TaskcondFinishedPush: {
    fields: {
      condId: {
        type: "int32",
        id: 1
      }
    }
  },
  DBTrollTrain: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      items: {
        keyType: "int32",
        type: "int32",
        id: 3
      },
      price: {
        keyType: "int32",
        type: "int32",
        id: 4
      },
      gridNum: {
        type: "int32",
        id: 5
      },
      tarinPos: {
        type: "int32",
        id: 6
      },
      rangeId: {
        type: "int32",
        id: 7
      },
      buy: {
        type: "int32",
        id: 8
      },
      sell: {
        type: "int32",
        id: 9
      },
      npcLv: {
        type: "int32",
        id: 10
      },
      npcReward: {
        keyType: "int32",
        type: "int32",
        id: 11
      },
      totalEarn: {
        type: "int64",
        id: 12
      },
      sellCount: {
        type: "int32",
        id: 13
      },
      refreshTime: {
        type: "int64",
        id: 14
      },
      aiCount: {
        type: "int32",
        id: 15
      },
      shop: {
        keyType: "int32",
        type: "int32",
        id: 16
      },
      ctime: {
        type: "int64",
        id: 17
      },
      circle: {
        type: "int32",
        id: 18
      },
      surpriseID: {
        keyType: "int32",
        type: "int32",
        id: 19
      },
      resetTime: {
        type: "int64",
        id: 20
      }
    }
  },
  DBTrollRecord: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      gold: {
        type: "int32",
        id: 3
      },
      pos: {
        type: "int32",
        id: 4
      },
      time: {
        type: "int64",
        id: 5
      }
    }
  },
  TrollGetListReq: {
    fields: {}
  },
  TrollGetListResp: {
    fields: {
      data: {
        type: "DBTrollTrain",
        id: 1
      }
    }
  },
  TrollBuyOrSellReq: {
    fields: {
      items: {
        keyType: "int32",
        type: "int32",
        id: 1
      }
    }
  },
  TrollBuyOrSellResp: {
    fields: {
      data: {
        type: "DBTrollTrain",
        id: 1
      }
    }
  },
  TrollAfkSetReq: {
    fields: {
      buy: {
        type: "int32",
        id: 1
      },
      sell: {
        type: "int32",
        id: 2
      },
      count: {
        type: "int32",
        id: 3
      }
    }
  },
  TrollAfkSetResp: {
    fields: {
      data: {
        type: "DBTrollTrain",
        id: 1
      }
    }
  },
  TrollNpcRewardReq: {
    fields: {
      rewardId: {
        type: "int32",
        id: 1
      }
    }
  },
  TrollNpcRewardResp: {
    fields: {
      data: {
        type: "DBTrollTrain",
        id: 1
      }
    }
  },
  TrollRankListReq: {
    fields: {}
  },
  RankData: {
    fields: {
      rankId: {
        type: "int32",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      name: {
        type: "string",
        id: 3
      },
      gold: {
        type: "int64",
        id: 4
      },
      figure: {
        type: "int32",
        id: 5
      },
      title: {
        type: "int32",
        id: 6
      }
    }
  },
  TrollRankListResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "RankData",
        id: 1
      }
    }
  },
  TrollRecordListReq: {
    fields: {}
  },
  TrollRecordListResp: {
    fields: {
      data: {
        rule: "repeated",
        type: "DBTrollRecord",
        id: 1
      }
    }
  },
  TrollSurpriseIdReq: {
    fields: {}
  },
  TrollSurpriseIdResp: {
    fields: {
      surpriseID: {
        keyType: "int32",
        type: "int32",
        id: 1
      }
    }
  },
  UserLoginReq: {
    fields: {
      account: {
        type: "string",
        id: 1
      },
      sid: {
        type: "string",
        id: 2
      }
    }
  },
  UserLoginResp: {
    fields: {
      data: {
        type: "DBUser",
        id: 1
      },
      ex: {
        type: "DBUserExpand",
        id: 2
      },
      timeNow: {
        type: "int64",
        id: 3
      }
    }
  },
  UserInfoReq: {
    fields: {}
  },
  UserInfoResp: {
    fields: {
      data: {
        type: "DBUser",
        id: 1
      },
      ex: {
        type: "DBUserExpand",
        id: 2
      }
    }
  },
  UserLogoutReq: {
    fields: {}
  },
  UserLogoutResp: {
    fields: {}
  },
  UserRegisterReq: {
    fields: {
      account: {
        type: "string",
        id: 1
      },
      sid: {
        type: "string",
        id: 2
      }
    }
  },
  UserRegisterResp: {
    fields: {
      Code: {
        type: "ErrorCode",
        id: 1
      },
      account: {
        type: "string",
        id: 2
      }
    }
  },
  UserLoadResp: {
    fields: {
      data: {
        type: "CacheUser",
        id: 1
      }
    }
  },
  UserCreateReq: {
    fields: {
      NickName: {
        type: "string",
        id: 1
      },
      figure: {
        type: "int32",
        id: 2
      },
      gender: {
        type: "int32",
        id: 3
      }
    }
  },
  UserCreateResp: {
    fields: {
      IsSucc: {
        type: "bool",
        id: 1
      }
    }
  },
  UserResChangedPush: {
    fields: {
      gold: {
        type: "int64",
        id: 1
      },
      exp: {
        type: "int64",
        id: 2
      },
      vipexp: {
        type: "int64",
        id: 3
      },
      diamond: {
        type: "int64",
        id: 4
      },
      friend: {
        type: "int32",
        id: 5
      },
      starcoin: {
        type: "int64",
        id: 6
      },
      guildcoin: {
        type: "int32",
        id: 7
      },
      arenacoin: {
        type: "int32",
        id: 8
      },
      ps: {
        type: "int32",
        id: 9
      },
      moongold: {
        type: "int32",
        id: 10
      },
      talent1: {
        type: "int32",
        id: 11
      },
      talent2: {
        type: "int32",
        id: 12
      },
      talent3: {
        type: "int32",
        id: 13
      },
      talent4: {
        type: "int32",
        id: 14
      },
      merchantmoney: {
        type: "int32",
        id: 15
      },
      perlist: {
        rule: "repeated",
        type: "string",
        id: 16
      }
    }
  },
  UserOtherTermLoginPush: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  UserPsChangedPush: {
    fields: {
      ps: {
        type: "int32",
        id: 1
      }
    }
  },
  UserGetSettingReq: {
    fields: {}
  },
  UserGetSettingResp: {
    fields: {
      setting: {
        type: "DBUserSetting",
        id: 1
      }
    }
  },
  UserUpdateSettingReq: {
    fields: {
      setting: {
        type: "DBUserSetting",
        id: 1
      }
    }
  },
  UserUpdateSettingResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  UserVeriCodeReq: {
    fields: {}
  },
  UserVeriCodeResp: {
    fields: {
      code: {
        type: "int32",
        id: 1
      }
    }
  },
  UserInitdataReq: {
    fields: {
      code: {
        type: "int32",
        id: 1
      }
    }
  },
  UserInitdataResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  UserModifynameReq: {
    fields: {
      name: {
        type: "string",
        id: 1
      }
    }
  },
  UserModifynameResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      count: {
        type: "uint32",
        id: 2
      },
      name: {
        type: "string",
        id: 3
      }
    }
  },
  UserModifyavatarReq: {
    fields: {
      avatarId: {
        type: "string",
        id: 1
      }
    }
  },
  UserModifyavatarResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      avatarId: {
        type: "string",
        id: 2
      }
    }
  },
  UserModifybgpReq: {
    fields: {
      bgpId: {
        type: "string",
        id: 1
      }
    }
  },
  UserModifybgpResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      bgpId: {
        type: "string",
        id: 2
      }
    }
  },
  UserModifyfigureReq: {
    fields: {
      figureId: {
        type: "int32",
        id: 1
      }
    }
  },
  UserModifyfigureResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      figureId: {
        type: "int32",
        id: 2
      }
    }
  },
  UserGetTujianReq: {
    fields: {}
  },
  UserGetTujianResp: {
    fields: {
      heroids: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  UserLvChangedPush: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      exp: {
        type: "int64",
        id: 2
      },
      lv: {
        type: "int32",
        id: 3
      }
    }
  },
  UserVipChangedPush: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      vipExp: {
        type: "int64",
        id: 2
      },
      vipLv: {
        type: "int32",
        id: 3
      }
    }
  },
  UserModifysignReq: {
    fields: {
      sign: {
        type: "string",
        id: 1
      }
    }
  },
  UserModifysignResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  UserBattlerecordReq: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  UserBattlerecordResp: {
    fields: {
      data: {
        type: "DBUser",
        id: 1
      },
      ex: {
        type: "DBUserExpand",
        id: 2
      },
      pagodaRecord: {
        type: "DBPagodaRecord",
        id: 3
      },
      huntingRecord: {
        rule: "repeated",
        type: "DBHuntingRank",
        id: 4
      },
      vikingRecord: {
        rule: "repeated",
        type: "DBVikingRank",
        id: 5
      }
    }
  },
  UserSettingteamReq: {
    fields: {
      heroObjIds: {
        rule: "repeated",
        type: "string",
        id: 2
      }
    }
  },
  UserSettingteamResp: {
    fields: {
      uid: {
        type: "string",
        id: 1
      }
    }
  },
  UserShowteamReq: {
    fields: {}
  },
  UserShowteamResp: {
    fields: {
      heroObjIds: {
        rule: "repeated",
        type: "string",
        id: 1
      }
    }
  },
  UserOnlineResp: {
    fields: {
      users: {
        rule: "repeated",
        type: "CacheUser",
        id: 1
      }
    }
  },
  UserDataListResp: {
    fields: {
      users: {
        rule: "repeated",
        type: "DBUser",
        id: 1
      }
    }
  },
  UserGetServerDataReq: {
    fields: {}
  },
  UserGetServerDataResp: {
    fields: {
      data: {
        type: "DBServerData",
        id: 1
      }
    }
  },
  UserSignReq: {
    fields: {}
  },
  UserSignResp: {
    fields: {
      data: {
        type: "DBSign",
        id: 1
      }
    }
  },
  UserPuzzleAwardReq: {
    fields: {
      index: {
        type: "int32",
        id: 1
      }
    }
  },
  UserPuzzleAwardResp: {
    fields: {
      index: {
        type: "int32",
        id: 2
      }
    }
  },
  UserChangeTipsReq: {
    fields: {
      tips: {
        type: "int32",
        id: 1
      }
    }
  },
  UserChangeTipsResp: {
    fields: {
      data: {
        type: "DBSign",
        id: 1
      }
    }
  },
  UserSellResReq: {
    fields: {
      atno: {
        rule: "repeated",
        type: "UserAtno",
        id: 1
      }
    }
  },
  UserSellResResp: {
    fields: {
      atn: {
        rule: "repeated",
        type: "UserAssets",
        id: 1
      },
      IsSucc: {
        type: "bool",
        id: 2
      }
    }
  },
  UserSwitchDefPerReq: {
    fields: {
      defper1: {
        type: "string",
        id: 1
      },
      defper2: {
        type: "string",
        id: 2
      },
      defper3: {
        type: "string",
        id: 3
      }
    }
  },
  UserSwitchDefPerResp: {
    fields: {
      issucc: {
        type: "bool",
        id: 1
      },
      defper1: {
        type: "string",
        id: 2
      },
      defper2: {
        type: "string",
        id: 3
      },
      defper3: {
        type: "string",
        id: 4
      }
    }
  },
  DBUserExpand: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      lastreadnotiftime: {
        type: "int64",
        id: 3
      },
      lastInitdataTime: {
        type: "int64",
        id: 4
      },
      initdataCount: {
        type: "uint32",
        id: 5
      },
      chatchannel: {
        type: "int32",
        id: 6
      },
      modifynameCount: {
        type: "int32",
        id: 7
      },
      expitem: {
        keyType: "string",
        type: "int32",
        id: 8
      },
      activeday: {
        type: "int32",
        id: 11
      },
      activeweek: {
        type: "int32",
        id: 12
      },
      sign: {
        type: "string",
        id: 13
      },
      friendPoint: {
        type: "int32",
        id: 14
      },
      friendPointID: {
        type: "int32",
        id: 15
      },
      friendPointOD: {
        type: "int32",
        id: 16
      },
      loginAddCount: {
        type: "int32",
        id: 19
      },
      loginContinueCount: {
        type: "int32",
        id: 20
      },
      rtaskId: {
        type: "int32",
        id: 21
      },
      teamHeroIds: {
        rule: "repeated",
        type: "string",
        id: 22
      },
      sociatyId: {
        type: "string",
        id: 23
      },
      sociatyCd: {
        type: "int64",
        id: 24
      },
      guildcoin: {
        type: "int32",
        id: 25
      },
      arenacoin: {
        type: "int32",
        id: 26
      },
      physicalbuynum: {
        type: "int32",
        id: 27
      },
      physicalbuyLasttime: {
        type: "int64",
        id: 28
      },
      buyunifiedticket: {
        type: "int32",
        id: 29
      },
      lasttimeunifiedticket: {
        type: "int64",
        id: 30
      },
      recovertimeunifiedticket: {
        type: "int64",
        id: 31
      },
      sociatyTicketBuyNum: {
        type: "int32",
        id: 32
      },
      sociatyTicket: {
        type: "int32",
        id: 33
      },
      mline: {
        keyType: "int32",
        type: "int32",
        id: 34
      },
      suiteId: {
        rule: "repeated",
        type: "int32",
        id: 35
      },
      globalbuff: {
        type: "int32",
        id: 36
      },
      race: {
        keyType: "int32",
        type: "int32",
        id: 37
      }
    }
  },
  DBViking: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      boss: {
        keyType: "int32",
        type: "int32",
        id: 3
      },
      buyCount: {
        type: "int32",
        id: 4
      },
      cTime: {
        type: "int64",
        id: 5
      },
      bossTime: {
        keyType: "string",
        type: "int32",
        id: 6
      },
      recoveryTime: {
        type: "int64",
        id: 7
      }
    }
  },
  DBVikingRank: {
    fields: {
      id: {
        type: "string",
        id: 1
      },
      uid: {
        type: "string",
        id: 2
      },
      difficulty: {
        type: "int32",
        id: 3
      },
      bosstype: {
        type: "int32",
        id: 4
      },
      nickname: {
        type: "string",
        id: 5
      },
      icon: {
        type: "string",
        id: 6
      },
      lv: {
        type: "int32",
        id: 7
      },
      leadpos: {
        type: "int32",
        id: 8
      },
      line: {
        rule: "repeated",
        type: "LineUp",
        id: 9
      },
      costTime: {
        type: "int32",
        id: 10
      }
    }
  },
  VikingGetListReq: {
    fields: {}
  },
  VikingGetListResp: {
    fields: {
      data: {
        type: "DBViking",
        id: 1
      }
    }
  },
  VikingChallengeReq: {
    fields: {
      bossId: {
        type: "int32",
        id: 1
      },
      difficulty: {
        type: "int32",
        id: 2
      },
      battle: {
        type: "BattleFormation",
        id: 3
      },
      autoBuy: {
        type: "bool",
        id: 4
      }
    }
  },
  VikingChallengeResp: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      },
      bossId: {
        type: "int32",
        id: 2
      },
      difficulty: {
        type: "int32",
        id: 3
      }
    }
  },
  VikingChallengeOverReq: {
    fields: {
      bossId: {
        type: "int32",
        id: 1
      },
      difficulty: {
        type: "int32",
        id: 2
      },
      report: {
        type: "BattleReport",
        id: 3
      },
      star: {
        rule: "repeated",
        type: "int32",
        id: 4
      }
    }
  },
  VikingChallengeOverResp: {
    fields: {
      data: {
        type: "DBViking",
        id: 1
      },
      asset: {
        rule: "repeated",
        type: "UserAtno",
        id: 2
      },
      sell: {
        rule: "repeated",
        type: "string",
        id: 3
      },
      heroexp: {
        keyType: "string",
        type: "int32",
        id: 4
      }
    }
  },
  VikingBuyReq: {
    fields: {
      count: {
        type: "int32",
        id: 1
      }
    }
  },
  VikingBuyResp: {
    fields: {
      data: {
        type: "DBViking",
        id: 1
      }
    }
  },
  VikingRankListReq: {
    fields: {
      boosType: {
        type: "int32",
        id: 1
      },
      friend: {
        type: "bool",
        id: 2
      }
    }
  },
  VikingRankListResp: {
    fields: {
      ranks: {
        rule: "repeated",
        type: "DBVikingRank",
        id: 1
      }
    }
  },
  DBWorldtask: {
    fields: {
      uid: {
        type: "string",
        id: 1
      },
      taskList: {
        rule: "repeated",
        type: "int32",
        id: 3
      },
      currentTask: {
        keyType: "int32",
        type: "Worldtask",
        id: 4
      },
      chapters: {
        keyType: "int32",
        type: "int32",
        id: 5
      },
      daliyRefreshTime: {
        type: "int64",
        id: 6
      },
      weekRefreshTime: {
        type: "int64",
        id: 7
      }
    }
  },
  Worldtask: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      },
      taskType: {
        type: "int32",
        id: 3
      },
      npcStatus: {
        type: "int32",
        id: 5
      },
      condiIds: {
        rule: "repeated",
        type: "int32",
        id: 6
      },
      deliverNpc: {
        type: "int32",
        id: 7
      }
    }
  },
  WorldtaskMineReq: {
    fields: {}
  },
  WorldtaskMineResp: {
    fields: {
      task: {
        type: "DBWorldtask",
        id: 1
      }
    }
  },
  WorldtaskAcceptReq: {
    fields: {
      groupId: {
        type: "int32",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      }
    }
  },
  WorldtaskAcceptResp: {
    fields: {
      Code: {
        type: "ErrorCode",
        id: 1
      }
    }
  },
  WorldtaskCompletecondisPush: {
    fields: {
      groupId: {
        type: "int32",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      },
      condiIds: {
        rule: "repeated",
        type: "int32",
        id: 3
      }
    }
  },
  WorldtaskCompleteCondiReq: {
    fields: {
      groupId: {
        type: "int32",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      },
      condiId: {
        type: "int32",
        id: 3
      }
    }
  },
  WorldtaskCompleteCondiResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      },
      condiId: {
        type: "int32",
        id: 3
      }
    }
  },
  WorldtaskFinishReq: {
    fields: {
      groupId: {
        type: "int32",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      }
    }
  },
  WorldtaskFinishResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      },
      condiId: {
        type: "int32",
        id: 3
      }
    }
  },
  WorldtaskNexttaskPush: {
    fields: {
      nextTask: {
        keyType: "int32",
        type: "Worldtask",
        id: 1
      },
      finishedTaskIds: {
        rule: "repeated",
        type: "int32",
        id: 2
      }
    }
  },
  WorldtaskBattleStartReq: {
    fields: {
      battleConfId: {
        type: "int32",
        id: 1
      },
      battle: {
        type: "BattleFormation",
        id: 2
      }
    }
  },
  WorldtaskBattleStartResp: {
    fields: {
      info: {
        type: "BattleInfo",
        id: 1
      }
    }
  },
  WorldtaskBattleFinishReq: {
    fields: {
      groupId: {
        type: "int32",
        id: 1
      },
      taskId: {
        type: "int32",
        id: 2
      },
      condiId: {
        type: "int32",
        id: 3
      },
      battleConfId: {
        type: "int32",
        id: 4
      },
      report: {
        type: "BattleReport",
        id: 5
      }
    }
  },
  WorldtaskBattleFinishResp: {
    fields: {
      taskId: {
        type: "int32",
        id: 1
      }
    }
  },
  WorldtaskFinishIdsPush: {
    fields: {
      taskList: {
        rule: "repeated",
        type: "Worldtask",
        id: 1
      }
    }
  },
  WorldtaskChapterrewardReq: {
    fields: {
      groupId: {
        type: "int32",
        id: 1
      }
    }
  },
  WorldtaskChapterrewardResp: {
    fields: {
      code: {
        type: "ErrorCode",
        id: 1
      }
    }
  }
});

module.exports = $root;
