game_sync/protocol/webapi/common.proto

1005 lines
33 KiB
Protocol Buffer
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

syntax = "proto3";
package webapi;
option go_package = "mongo.games.com/game/protocol/webapi";
import "protocol/server/pbdata.proto";
/*
这个文件保存公共结构
*/
// 私有化mysql数据库
message MysqlDbSetting {
string HostName = 1; // ip/域名
int32 HostPort = 2; // 端口
string Database = 3; // 数据库名
string Username = 4; // 用户名
string Password = 5; // 数据库密码 TODO:加密存储
string Options = 6; // 附加参数
}
// 私有化mongo数据库
message MongoDbSetting {
string HostName = 1; // ip/域名
int32 HostPort = 2; // 端口
string Database = 3; // 数据库名
string Username = 4; // 用户名
string Password = 5; // 数据库密码 TODO:加密存储
string Options = 6; // 附加参数
string CfgSign = 7; // 配置签名,防止来自外部的恶意修改
int32 CfgVer = 8; // 配置版本号,版本号提升可以显式的让业务层重建连接池
}
// 排行榜开关
message RankSwitch {
int32 Asset = 1; //财富榜
int32 Recharge = 2; //充值榜
int32 Exchange = 3; //兑换榜
int32 Profit = 4; //盈利榜
}
//俱乐部配置
message ClubConfig {
int64 CreationCoin = 1; //创建俱乐部金额
int64 IncreaseCoin = 2; //升级俱乐部金额
int32 ClubInitPlayerNum = 3; //俱乐部初始人数
int32 IncreasePlayerNum = 4; //升级人数增加
bool IsOpenClub = 5; //是否开放俱乐部
bool CreateClubCheckByManual = 6; //创建俱乐部人工审核true=手动
bool EditClubNoticeByManual = 7; //修改公告人工审核true=手动
int64 CreateRoomAmount = 8; //创建房间金额(分/局)
repeated int64 GiveCoinRate = 9; //会长充值额外赠送比例
}
message ThirdGame {
int32 Id = 1;
int32 Merchant = 2;// 状态 0/1
}
// 平台结构
message Platform {
string PlatformName = 1; // 平台名称
bool Isolated = 2; //是否独立平台
bool Disabled = 3; //是否关闭
int32 Id = 4; //平台ID
string CustomService = 5; //客服系统链接
int32 BindOption = 6; //平台用户绑定方式 位运算 微信|支付宝|银行卡
bool ServiceFlag = 7; //是否支持浏览器跳转 0=否 1=是
int32 UpgradeAccountGiveCoin = 8; //升级账号奖励金币
int32 NewAccountGiveCoin = 9; //新账号奖励金币
int32 PerBankNoLimitAccount = 10; //同一银行卡号绑定用户数量限制
int32 ExchangeMin = 11; //最低兑换金额
int32 ExchangeLimit = 12; // 兑换限制(身上携带)
int32 ExchangeTax = 13; //兑换税收(万分比)
int32 ExchangeForceTax = 14; //强制兑换税收
int32 ExchangeFlow = 15; // 兑换流水比例
int32 ExchangeGiveFlow = 16; //赠送兑换流水比例
int32 ExchangeFlag = 17; //兑换标记 二进制 第一位:兑换税收 第二位:流水比例
int32 ExchangeVer = 18; //兑换版本
int32 ExchangeMultiple = 19; //兑换基数
repeated int32 VipRange = 20; // VIP充值区间
int32 SpreadConfig = 21; //0:等级返点 1:保底返佣
RankSwitch Leaderboard = 22; //排行榜开关
ClubConfig ClubConfig = 24; //俱乐部配置
int32 VerifyCodeType = 25; //验证码方式 短信,随机,滑块
repeated ThirdGame ThirdGameMerchant = 26; //三方游戏平台状态
int32 CustomType = 27; //客服类型 0 live800 1 美洽 2 CC客服
//bool NeedDeviceInfo = 28; //需要用户设备码
bool NeedSameName = 29; //绑定的银行卡和支付宝用户名字需要相同
int32 ExchangeBankMax = 30; //银行卡最大兑换金额 0不限制
int32 ExchangeAlipayMax = 31; //支付宝最大兑换金额 0不限制
int32 PerBankNoLimitName = 32; //银行卡名字数量限制
bool IsCanUserBindPromoter = 33; //是否允许用户手动绑定推广员
int32 UserBindPromoterPrize = 34; //手动绑定奖励
string MerchantKey = 35;//商户秘钥
map<int32, int64> BindTelReward = 36; // 绑定手机奖励奖励id数量
}
// 游戏状态结构
message GameStatus{
int32 GameId = 1; // excel 表Id
bool Status = 2; // 是否开启
}
// 全局游戏配置,单独拿出来,方便扩展
message GameConfigGlobal{
repeated GameStatus GameStatus = 1;
}
// GameFree 需要包一层属性
message GameFree {
int32 GroupId = 1; // 组ID
bool Status = 2; // 开关
server.DB_GameFree DbGameFree = 3; // excel导出结构
bool CloseCtrl = 4; // 是否关闭调控开关
}
// 平台级别游戏配置
message PlatformGameConfig {
int32 PlatformId = 1; // 平台ID
repeated GameFree DbGameFrees = 2; // 游戏配置
}
// 平台数据库配置
message PlatformDbConfig{
int32 PlatformId = 1; //平台ID
MysqlDbSetting Mysql = 2;
MongoDbSetting MongoDb = 3;
MongoDbSetting MongoDbLog = 4;
}
//游戏分组配置
message GameConfigGroup {
int32 Id = 1; //分组id
int32 LogicId = 2; //游戏id
server.DB_GameFree DbGameFree = 3; // 游戏分组配置
string GroupName = 4; //分组标题
}
// 包信息
message AppInfo {
int32 Id = 1;
int32 PlatformId = 2; // 平台ID
string Name = 3; // app名称
string PackageName = 4; // android 包标识
string BundleId = 5; // ios bundleid
string ApkUrl = 6; // apk 下载地址
string IpaUrl = 7; // ipa 下载地址
string CreateTime = 8; // 创建时间
string CurrencyType = 9; // 货币类型 USD 美元 KHR 瑞尔 VND 越南盾
int32 CurrencyRatio = 10; // 货币比例
}
message PlayerData{
int32 SnId = 1;
string Tel = 2;
int32 VIP = 3;
string Name = 4;
int64 Coin = 5;
int64 CoinExchangeTotal = 6;//总提现金额 兑换
int64 CoinPayTotal = 7;//在线总充值金额
int64 CreateTime = 8;//创建时间
string DeviceId = 9;//设备id
string DeviceOS = 10;//设备操作系统
int32 DrawTimes = 11;//平局次数
int64 FailCoin = 12;//总输钱数量
int32 FailTimes = 13;//失败次数
int64 GameTax = 14;//总游戏税收
string Ip = 15;
bool IsRob = 16;
int64 LastLoginTime = 17;//最后登陆时间
string MarkInfo = 18;//用来备注玩家信息
bool Online = 19;
string Package = 20;//包信息 android:包名 ios:bundleid
string PackageID = 21;//推广包标识 对应客户端的packagetag
string Platform = 22;
string RegIp = 23;//注册ip地址
int64 SafeBoxCoin = 24;//保险箱金币
int32 WBLevel = 25;//黑白名单等级
int64 WinCoin = 26;//总赢钱数量
int32 WinTimes = 27;//胜利次数
int32 BlacklistType = 28;//黑名单作用域和后台一样都是采用位标记的表示形式
int32 SceneId = 29;//房间号
int32 GameFreeId = 30;
int64 Diamond = 31;//钻石
int32 RoleUnlock = 32;//角色解锁的个数
repeated int32 RolesIds = 33;//角色Id
int32 PetUnlock = 34;//宠物解锁的个数
repeated int32 PetsIds = 35;//宠物Id
int32 AccountType = 36;//账户类型 0.其他 1.google 2.facebook
int32 ChessGrade = 37; // 象棋积分
int64 AllWinCoin = 38;// 总赢钱数量; 总赢钱数量(税前)-总输钱数量
int64 AllFlow = 39; // 总流水
int64 PlayerPoolCurrent = 40; // 个人水池当前值
int64 PlayerPoolUpper = 41; // 个人水池上限值
int64 PlayerPoolLower = 42; // 个人水池下限值
int64 PlayerPoolRate = 43; // 个人水池控制值
map<int64, int64> RankScore = 44; // 排位积分 1 tienlen排位积分
int64 RoleAdded = 45;//人物加成
int64 VipAdded = 46;//VIP加成
int64 VipExp = 47;//VIP经验
repeated int32 ShopId = 48; //首充加倍,已买过的商品id
int64 Delete = 49;//是否删除 0.正常 1.删除
string InviteCode = 50;//邀请码
int32 InviteSnId = 51;//邀请人
int64 InviteScore = 52;//邀请积分
string Channel = 53; // 首次安装渠道
string LastChannel = 54; // 最近使用的包渠道
repeated ItemInfo Items = 55; // 背包物品
bool IsPermit = 56; // 是否已购买典藏通行证
int64 Long = 57; // 龙币数量
int64 PermitScore = 58; // 赛季通行证积分
int64 VCardCost = 59; // v卡消耗
int64 MoneyTotal = 60; // 充值总金额
string ChannelID = 61; // 渠道ID
int32 UseRoleId = 62; // 当前使用的角色id
int32 UseSkinId = 63; // 当前使用的皮肤id
repeated int32 SkinIds = 64; // 解锁的皮肤id列表
repeated ModInfo RoleUnlockList = 65; // 解锁的角色列表
repeated ModInfo PetUnlockList = 66; // 解锁的宠物列表
repeated ModInfo PetSkillUnlockList = 67; // 解锁的宠物技能列表
repeated ModInfo SkinUnlockList = 68; // 解锁的皮肤列表
}
message ModInfo {
int32 Id = 1; // 模型id
int32 Level = 2; // 模型等级
int64 Ts = 3; // 解锁时间
}
message RoomInfo{
string Platform = 1;
int32 SceneId = 2;//房间id
int32 GameId = 3;//游戏id
int32 GameMode = 4;//游戏模式
int32 SceneMode = 5;//房间模式,参考common.SceneMode_XXX
int32 GroupId = 6;//组id
int32 GameFreeId = 7; // 场次id
int32 SrvId = 8;//服务器id
int32 Creator = 9;//创建者账号id
int32 Agentor = 10;//代理者id
string ReplayCode = 11;//回放码
repeated int32 Params = 12;//场景参数
repeated int32 PlayerIds = 13;//所有玩家id
int32 PlayerCnt = 14;//玩家数量
int32 RobotCnt = 15;//AI数量
int32 Start = 16;//0.等待 1.游戏中
int64 CreateTime = 17;//创建时间
int32 BaseScore = 18;//底分
int32 RoomConfigId = 19;//房间配置id
int32 CurrRound = 20;//当前局数
int32 MaxRound = 21;//最大局数
string Password = 22;// 密码
int32 CostType = 23;// 付费方式 1房主 2AA
int32 Voice = 24;// 语音开关 1开启
int32 PlayerNum = 25; // 房间最大人数
}
message PlayerSingleAdjust{
string Id = 1;
string Platform = 2;
int32 GameFreeId = 3;
int32 SnId = 4;
int32 Mode = 5;//调控模式 1赢 2输 tinyint(1)
int32 TotalTime = 6;//调控总次数
int32 CurTime = 7;//当前调控次数
int64 BetMin = 8;//下注下限
int64 BetMax = 9;//下注上限
int64 BankerLoseMin = 10;//坐庄被输下限
int64 BankerWinMin = 11;//坐庄被控赢下限
int32 CardMin = 12;//牌型下限
int32 CardMax = 13;//牌型上限
int32 Priority = 14;//优先级
int32 WinRate = 15;//万分比
int32 GameId = 16;
int32 GameMode = 17;
string Operator = 18;
int64 CreateTime = 19;
int64 UpdateTime = 20;
}
message ServerInfo {
int32 SrvId = 1;//服务器id
int32 SrvType = 2;//服务器类型 4.网管 6.大厅.7游戏
int32 State = 3;//服务器状态 0.关闭 1.开启
int32 PlayerNum = 4;//人数
int32 RobotNum = 5;//AI人数
int32 SceneNum = 6;//房间数量
string Data = 7;
}
message CoinPoolSetting{
// 水池配置(excel)
string Platform = 1; //平台id
int32 GroupId = 2; //组id
int32 GameFreeId = 3;//游戏id
int32 ServerId = 4;//服务器id
int64 InitValue = 5;//初始库存值
int64 LowerLimit = 6;//库存下限
int64 UpperLimit = 7;//库存上限
int64 QuDu = 8; // 曲度值
int32 UpperOdds = 9; // 上线初始概率
int32 UpperOddsMax = 10; // 上线最大概率
int32 LowerOdds = 11; // 下线初始概率
int32 LowerOddsMax = 12; // 下线最大概率
int32 ProfitRate = 13;//营收比例,千分比
int64 ResetTime = 14; // 重置时间
int32 Switch = 15; // 开关 0开启 1关闭
int64 CoinValue = 16; // 当前水位
int64 ProfitPool = 17; // 收益池水位
int32 CtrlRate = 18; //调节赔率,万分比
int64 InitNoviceValue = 19; // 新手池初始库存值
int64 NoviceCoinValue = 20; // 新手池水位
}
//邮件
message MessageInfo {
string Id = 1;
int32 MType = 2;//消息类型
string Title = 3;//标题
string Content = 4;//内容
int32 State = 5;//当前消息状态
int64 CreateTime = 6;//创建时间戳
int32 SrcSnid = 7;//发送人ID
int32 DestSnid = 8;//目标人ID
int64 Coin = 9;//携带金币数量
string GiftId = 10;
int32 GiftState = 11;
string Platform = 12;
}
message HorseRaceLamp{
string Id = 1;
string Platform = 2;
string Title = 3;
string Content = 4;//公告内容
string Footer = 5;
int64 StartTime = 6;//开始时间
int32 Frequency = 7;// 公告间隔
int32 State = 8;// 状态0.启用1.关闭
int64 CreateTime = 9;//创建时间
int32 Count = 10;//播放次数
int32 Priority = 11;//播放优先级
int32 MsgType = 12;//公告类型
repeated int32 Target = 13;
int32 StandSec = 14;
}
//在线统计
message OnlineGameCnt{
int32 GameId = 1;//游戏id
int32 Cnt = 2;//在线人数
}
message OnlineReport{
int32 TotalCnt = 1; // 在线总人数
int32 AndroidOnlineCnt = 2;//android在线
int32 IosOnlineCnt = 3;// ios在线
int32 DatingPlayers = 4;// 总大厅人数
int32 OnRoomPlayers = 5;// 正在游戏房间人数
int32 TodayRegisterOnline = 6;// 当天注册在线
int32 SevenDayRegisterOnline = 7;
repeated OnlineGameCnt GameCount = 8;// 1-7天注册在线
}
message CommonNotice {
int32 Sort = 1;
string Title = 2;
string Content = 3;
string TypeName = 4;
int32 Type = 5;
int64 StartTime = 6;
int64 EndTime = 7;
string Platform = 8;
int32 CategoryType = 9;
string ImgUrl = 10;
int32 NoticeId = 11;
int32 IsLoop = 12;
int32 LoopTime = 13;
repeated string OnChannelName = 14;
string Url = 15;
}
message CommonNoticeList{
repeated CommonNotice List = 1;
string Platform = 2;
}
message ExchangeShop {
int32 Id = 1; //商品ID
string Picture = 2; // 图片
int32 Type = 3; // 类型 1话费2实物 3.道具 4.娃娃
string Name = 4; // 名称
string Content = 5; //规则说明
//int32 ShopLimit = 6; // 剩余总数
//int32 DayMaxLimit = 7; // 单日限购总数
int32 DayPlayLimit = 8; // 个人单日购买
repeated ExchangeType ExType = 9;//兑换类型
int32 TelCharge = 10; //话费
int32 ItemId = 11;//转化的道具Id
int32 VipDayMaxLimit = 12;//VIP每日限购
int32 NotVipDayMaxLimit = 13;//非VIP每日限购
int32 VipShopLimit = 14;//VIP限购总数
int32 NotVipShopLimit = 15;//非VIP限购总数
int32 ShopType = 16; //商品类型
repeated TelChargeData TelData = 17;
repeated ItemInfo Items = 18;
}
message TelChargeData{
int32 Id = 1;
string Name = 2;
string Url = 3;
}
//兑换类型
message ExchangeType{
int32 Price = 1; // 消耗V卡数量
int32 JPrice = 2; //消耗金券数量
int32 Cash = 3; //消耗现金数量
int32 DPrice = 4; //消耗娃娃卡数量
int32 Id = 5; //行数
}
// etcd /game/exchange_shop
message ExchangeShopList{
repeated ExchangeShop List = 1;
string Platform = 2;
repeated ShopWeight Weight = 3; //分类排序
}
message ShopWeight{
int32 ShopType = 1;
int32 Weight = 2;
string Name = 3;
int32 IsShow = 4;
repeated int32 Location = 5; // 显示位置
}
message ItemShop {
int32 Id = 1; //商品ID
int32 ItemId = 2; //道具ID
int32 Page = 3; //页面 1金币页面 2钻石页面 3道具页面
int32 Order = 4; //排序 页面内商品的位置排序
int32 Type = 5; // 类型 1金币 2钻石 3道具类型1用金币或者钻石购买 4.道具类型2走充值购买 5其他
repeated int32 Location = 6; // 显示位置 第1位竖版大厅 第2位Tienlen1级选场 第3位捕鱼1级选场
string Picture = 7; // 图片id
string Name = 8; // 名称
int32 Ad = 9; //是否观看广告 1是 2不是
int32 AdTime = 10; // 观看几次广告
int32 RepeatTimes = 11; // 领取次数
repeated int32 CoolingTime = 12; // 观看冷却时间
repeated int32 Label = 13; // 标签
repeated int32 AddArea = 14; // 加送百分比
int32 Amount = 15; // 货币金额
int32 ConstType = 16; // 购买消耗类型 1金币 2钻石 3美金 4柬埔寨币
repeated int32 CostArea = 17; //消耗区间
map<int64, int64> Award = 18; //加赠物品
int32 VipLevel = 19; //Vip等级限制
int32 Ratio = 20; //权重
int32 EndTime = 21; //新手礼包结束时间间隔
bool FirstSwitch = 22; //首冲翻倍开关
int32 OnFirstGiveDouble = 23; // 首冲翻倍时赠送是否翻倍 1开启 2关闭
}
// etcd /game/item_shop
message ItemShopList{
repeated ItemShop List = 1;
string Platform = 2;
}
//物品信息
message ItemInfo{
int32 ItemId = 1; // 物品ID
int64 ItemNum = 2; // 物品数量
string Name = 3; // 名称
}
message MatchInfoAward {
repeated ItemInfo ItemId = 1; // 道具
int64 Coin = 2; // 金币
int64 Diamond = 3; // 钻石、
int32 UpLimit = 4; // 名次上行
int32 DownLimit = 5; // 名次下行 例如 第一名为 UpLimit 1,DownLimit 1 4~10为 UpLimit 4,DownLimit 10
}
// 比赛场配置
message GameMatchDate {
int32 Id = 1; // 序号
int32 GameFreeId = 2; // 玩法类型 所用的玩法ID
int32 MatchType = 3; // 比赛类型 1.锦标赛 2.冠军赛
string MatchName = 4; // 场次名字
int32 MatchNumebr = 5; // 报名人数
repeated int32 MatchPromotion = 6; // 晋级方式
int32 MatchSwitch = 7; // 1.开启 2.关闭
repeated MatchInfoAward Award = 8;// 比赛奖励
int64 SignupCostCoin = 9; //报名消耗金币
int64 SignupCostDiamond = 10;//报名消耗钻石
ItemInfo SignupCostItem = 11;//报名消耗道具
int32 MatchTimeType = 12;//冠军赛时效类型 0无时效 1重复时间段 2一次性时间段
repeated int32 MatchTimeWeek = 13;//周几
int32 MatchTimeStartHMS = 14;//几点开始(时*10000 + 分*100 + 秒)
int32 MatchTimeEndHMS = 15;//几点结束(时*10000 + 分*100 + 秒)
repeated int64 MatchTimeStamp = 16;//哪一天(时间戳:开始时间戳-结束时间戳)
string TitleURL = 17;//比赛标题后台自定义
string AwardShow = 18;//主要奖励展示
string Rule = 19;
int32 SortId = 20;
int32 UseRobot = 21; //0机器人有参与 1纯真人
int32 MatchLevel = 22; // 难度等级
repeated string OnChannelName = 23; // 开启的渠道名称
int32 CardType = 24; // 手机卡类型
int32 ShowId = 25; // 比赛区分
int32 AwardNum = 26; //比赛奖励剩余数量
int32 AudienceSwitch = 27; // 观战开关 1开启 2关闭
}
// etcd /game/game_match
message GameMatchDateList{
repeated GameMatchDate List = 1;
string Platform = 2;
}
message MatchTypeInfo{
string Name = 1; // 名称
int32 SortId = 2; // 序号
bool On = 3; // 开关
int32 Id = 4; // 类型id
}
// etcd /game/match_type
message GameMatchType{
string Platform = 1;
repeated MatchTypeInfo List = 2; // 比赛类型列表
}
message WelfareDate {
int32 Grade = 1; // 数量
int32 Type = 2; // 类型1.金币 2.钻石 3.道具
string Name = 3; // 名称
int32 Item_Id = 4; // 道具id
}
message WelfareTurnplateDate {
int32 Id = 1; // 序号
repeated WelfareDate Date = 2; // 奖励
}
message WelfareTurnplateRate {
repeated int32 Rate = 1; // 转盘概率
}
// etcd /game/act_turnplate 转盘
message WelfareTurnplateDateList{
repeated WelfareTurnplateDate List = 1; // 转盘奖励
repeated WelfareTurnplateRate RateList = 2; // 转盘概率
string Platform = 3;
int32 Switch = 4; // 1.开启 2.关闭
}
message AddUpWelfareDate {
int32 AddUpDay = 1; // 累计几天
repeated WelfareDate AddUpDate = 2; // 累计奖励
}
message AddUpDate2TypeData {
int32 Day = 1;
int32 Id = 2;
int32 Num = 3;
}
message Welfare7SignDate {
int32 Day = 1; // 第几天
repeated WelfareDate Date = 2; // 奖励
repeated AddUpWelfareDate AddUpDate = 3; // 累计奖励
repeated AddUpWelfareDate AddUpDate2 = 4; //进阶奖励
repeated AddUpWelfareDate AddUpDate2Google = 5; //谷歌渠道进阶奖励
repeated AddUpDate2TypeData AddUpDate2Type = 6; //进阶奖励领取条件
}
// etcd /game/act_7sign 7日签到
message Welfare7SignDateList{
repeated Welfare7SignDate List = 1; // 七日签到
string Platform = 2;
int32 Switch = 3; // 1.开启 2.关闭
}
message BlindBoxData {
int32 Id = 1; // 序号
int32 Type = 2; // 类型1.金币 2.钻石
string Name = 3; // 名称
int32 Grade = 4; // 数量
int32 Consume = 5; // 购买消耗类型
int64 price1 = 6; // 原价
int64 price2 = 7; // 现价
double Discount = 8; // 折扣
int32 Item_Id = 9; // 道具id
}
// etcd /game/act_blindbox 盲盒
message WelfareBlindBoxDataList{
repeated BlindBoxData List = 1; // 盲盒
string Platform = 2;
int32 Switch = 3; // 1.开启 2.关闭
int32 Cycle = 4; // 循环 1.开启 2.关闭
int32 MinId = 5; // 最低序号
}
message WelfareSpree {
int32 Day = 1; // 序号
repeated WelfareDate Item = 2; // 道具
int32 VIPEX = 3; // VIP经验
int32 Consume = 5; // 购买消耗类型
int64 price1 = 6; // 原价
int64 price2 = 7; // 现价
double Discount = 8; // 折扣
}
// etcd /game/act_FirstPay 首充
message WelfareFirstPayDataList{
repeated WelfareSpree List = 1;
string Platform = 2;
int32 Switch = 3; // 1.开启 2.关闭
int32 Cycle = 4; // 循环 1.开启 2.关闭
}
// etcd /game/act_ContinuousPay 连续充值
message WelfareContinuousPayDataList{
repeated WelfareSpree List = 1; // 连续充值
string Platform = 2;
int32 Switch = 3; // 1.开启 2.关闭
int32 Cycle = 4; // 循环 1.开启 2.关闭
int32 Break = 5; // 中断 1.开启 2.关闭
}
message VIPcfg {
int32 VipId = 1; // 序号
map<int64, int64> Award = 2; // 道具
int32 VipEx = 3; // VIP经验
int64 Price = 4; // 金额
map<int64, int64> Privilege1 = 5; //特权1 VIP比赛场免费次数
repeated int32 Privilege2 = 6; //每日金币 0金币值 1充值金额
repeated int32 Privilege3 = 7;
int32 Privilege4 = 8;
int32 Privilege5 = 9;
int32 Privilege6 = 10;
map<int64, int64> Privilege7 = 11;
int32 Privilege7Price = 12;
int32 Privilege8 = 13;
repeated int32 RewardOutlineID = 14;
int32 ShopId2 = 15;
int32 ShopId7 = 16;
int32 MatchFreeTimes = 17; // vip比赛场免费次数
map<int64, int64> Privilege9 = 18; // vip免费礼包每个vip等级领取一次
}
// etcd /game/VIPcfg VIP配置
message VIPcfgDataList{
repeated VIPcfg List = 1; // VIP配置
string Platform = 2;
double MoneyRatio = 3; // 充值对应经验比例
}
message WbCtrlCfg{
string Platform = 1;
bool RealCtrl = 2;//人工调控
bool Novice = 3;//新手
bool Welfare = 4;//福利
bool KillPoints = 5;//杀分
}
// 入口开关
// etcd /game/plt/entryswitch/[平台id]/[游戏入口标识]
message EntrySwitch{
string Platform = 1;
int32 Index = 2; // 游戏入口标识
repeated bool Switch = 3; // 0游戏入口开关 1hot开关 2new开关
}
message ChessRankConfig {
string Name = 1; // 段位名称
int32 Score = 2; // 积分
repeated WelfareDate Item = 3; // 道具
}
message ChessRankcfgData{
repeated ChessRankConfig Datas = 1; // 积分段位配置
string Platform = 2;
int32 GameId = 3;
}
message PlayerPool{
string Platform = 1; // 平台id
int64 UpperLimit = 2; // 初始上限
int64 LowerLimit = 3; // 初始下限
int64 QuDu = 4; // 曲度值
int32 UpperOdds = 5; // 上限初始概率
int32 UpperOddsMax = 6; // 上限最大概率
int32 LowerOdds = 7; // 下限初始概率
int32 LowerOddsMax = 8; // 下限最大概率
int32 FightUp = 9; // 对战抽水比上限概率(千分比)
int32 FightDown = 10; // 对战抽水比下限概率(千分比)
int32 PayUp = 11; // 兑换比例上限概率(千分比)
int32 PayDown = 12; // 兑换比例下限概率(千分比)
int32 TianHuRate = 13; // 天胡概率(千分比)
bool PlayerPoolSwitch = 14; // 个人水池开关
}
message GameConfig {
string Platform = 1; // 平台id
bool Switch = 2; // 开关
int32 TianHu = 3; // 天胡使用权重
int32 PaiKu = 4; // 牌库使用权重
int32 FenCha = 5; // 分差发牌权重
int32 FenChaScore = 6; // 牌分差值
int32 GoodFenCha = 7; // 好牌分差值
}
// etcd /game/act_phoneLottery
message WelfarePhoneLotteryStatus{
string Platform = 1;
int32 Switch = 2; // 1.开启 2.关闭
}
// etcd /game/act_collect
message WelfareCollectConfig{
string Platform = 1;
int32 Switch = 2; // 1.开启 2.关闭
}
// etcd /game/channel/switch
message ChannelSwitchConfig{
int32 Tp = 1; // 开关类型 1.兑换 2.道具掉落 3.邀请活动开关 4.通行证 5.钻石抽奖
string Platform = 2; // 平台id
repeated string OnChannelName = 3; // 开启渠道
}
message RankAward{
int64 Start = 1; // 开始积分
int64 End = 2; // 结束积分
int64 Num = 3; // 奖励
}
// etcd /game/act_invite
message ActInviteConfig {
string Platform = 1;
int64 BindScore = 2; // 绑定积分
int64 RechargeScore = 3; // 充值积分,一个玩家最多给上级贡献一次
map<int64, int64> PayScore = 4; // 充值积分;充值金额:获得积分
repeated int64 Rates = 5; // 返佣比例;多级按顺序给
repeated RankAward Awards1 = 6; // 周榜奖励列表
repeated RankAward Awards2 = 7; // 周榜奖励列表
repeated RankAward Awards3 = 8; // 周榜奖励列表
int64 BindTelScore = 9; // 绑定手机号积分
}
// 等级奖励
message PermitLevelConfig{
int32 Rank = 1; // 等级
int64 Score = 2; // 积分
repeated ItemInfo Award1 = 3; // 普通奖励
repeated ItemInfo Award2 = 4; // 典藏奖励
}
// 兑换配置
message PermitExchangeConfig{
int32 Id = 1; // 商品id
int32 SortId = 2; // 排序序号
repeated ItemInfo Gain = 3; // 获得商品
repeated ItemInfo Cost = 4; // 消耗
bool IsPermit = 5; // 是否需要典藏通行证
int64 Level = 6; // 达到等级
int64 Times = 7; // 最大兑换次数
bool IsShow = 8; // 开关true 开启, false 关闭
}
// 排行配置
message PermitRankConfig{
int32 Start = 1; // 开始排名第一名为0
int32 End = 2; // 结束排名
repeated ItemInfo ItemId = 3; // 奖励
}
message PermitChannelConfig{
string Channel = 1; // 渠道
repeated PermitLevelConfig LevelConfig = 2; // 等级奖励
repeated PermitExchangeConfig ExchangeConfig = 3; // 兑换配置
repeated PermitRankConfig RankConfig = 4; // 排行配置
}
// etcd /game/act_permit
message ActPermitConfig{
string Platform = 1; // 平台
int64 StartTs = 2; // 开始日期
int32 Days = 3; // 持续天数
repeated PermitChannelConfig Configs = 4; // 渠道配置
}
//钻石抽奖
message DiamondLotteryInfo{
int32 Id = 1;
int32 Type = 2;
string Name = 3;
int32 ItemId = 4;
int32 Grade = 5;
int32 Oddrate = 6;
}
//钻石抽奖白名单
message DiamondLotteryPlayers{
int32 uid = 1;
int32 Count = 2; //抽奖次数
repeated AwardData Award = 3; //配置表里的奖励ID
}
message AwardData{
int32 AwardId = 1;
int32 Weight = 2;
}
message DiamondLotteryData{
string Channel = 1; //渠道
repeated DiamondLotteryInfo Info = 2;
int32 MaxScore = 3; //保底奖励最大值
int32 DiamondNum = 4; //单次抽奖消耗钻石数量
repeated DiamondLotteryPlayers Players = 5;//白名单
}
// etcd /game/diamond_lottery
message DiamondLotteryConfig{
string Platform = 1; // 平台
repeated DiamondLotteryData LotteryData = 2;
}
// etcd /game/item
message ItemConfig {
string Platform = 1; // 平台
repeated server.DB_GameItem Items = 2; // 道具列表
}
message RankAwardInfo{
int32 Id = 1;
int32 RankType = 2;
int32 RankLevelId = 3;
repeated ItemInfo Item = 4; // 道具
}
message RankTypeInfo{
int32 Id = 1;
int32 Order = 2;
string RankName = 3;
int32 RankType = 4;
int32 TurnOff = 5; //奖励开关
repeated RankAwardInfo Award = 6;
}
//etcd /game/RankType
message RankTypeConfig{
string Platform = 1; // 平台
repeated RankTypeInfo Info = 2;
}
message SkinLevel {
int32 Level = 1; // 等级
map<int32, int64> UpItem = 2; // 升级所需道具
int32 SkillId = 3; // 技能id
int32 SkillLevel = 4; // 技能等级
int32 SkillValue = 5; // 技能属性值
}
message SkinItem {
int32 Id = 1; // 皮肤id
int32 UnlockType = 2; // 解锁类型 0默认使用 1自动使用道具解锁并使用 2使用道具解锁
map<int32, int64> UnlockParam = 3; // 解锁所需道具
int32 IsUpgrade = 4; // 升级开关 1开启 2关闭
int32 SkillType = 5; // 技能生效类型 0获得后生效 1穿戴生效
repeated SkinLevel Levels = 6; // 等级列表
}
// etcd /game/skin_config
message SkinConfig {
string Platform = 1; // 平台
repeated SkinItem Items = 2; // 皮肤列表
}
// etcd /game/awardlog_config
message AwardLogConfig{
string Platform = 1; // 平台
repeated AwardLogData AwardLog = 2;
repeated AnnouncerLogInfo AnnouncerLog = 3;
}
message AwardLogData{
int32 TypeId = 1; //1话费 2实物
int32 SortId = 2; //排序類型 1-数量 2-序号
repeated AwardLogInfo AwardLog = 3;
}
message AwardLogInfo{
int32 ItemId = 2; //道具ID
int64 Num = 4; //数量
string Url = 5; //话费icon
int32 Order = 6; //序号
}
//实时播报
message AnnouncerLogInfo{
int32 Snid = 1; //玩家ID
string Name = 2; //玩家名字
string Phone = 3; //电话
int32 ItemId = 4; //获得物品ID
int32 TypeId = 5; //1-话费 2-实物
}
// etcd /game/guide_config
message GuideConfig {
string Platform = 1; // 平台
int32 On = 2; // 引导开关 1开启 2关闭
int32 Skip = 3; // 引导跳过开关 1开启 2关闭
}
//娃娃机配置视频
// etcd /game/machine_config
message MachineConfig{
string Platform = 1; // 平台
repeated MachineInfo Info = 2;
}
message MachineInfo{
int32 MachineId = 1; //娃娃机Id
int64 AppId = 2;
string ServerSecret = 3;
string StreamId = 4;
int32 CostItemNum = 5; //消耗道具数量
int32 ItemId = 6; //获得道具Id
int32 ItemNum = 7; //获得道具数量
string IconAddr = 8;//图片地址
string Name = 9;//场次名字
}
// etcd /game/match_audience
message MatchAudience {
string Platform = 1; // 平台
int32 SnId = 2; // 玩家ID
int64 Ts = 3; // 时间戳
}
// etcd /game/spirit
message SpiritConfig {
string Platform = 1; // 平台
int32 On = 2; // 精灵开关 1开启 2关闭
string Url = 3;
}
// etcd /game/room_type
message RoomType {
string Platform = 1; // 平台
int32 Id = 2; // 配置ID
string Name = 3; // 类型名称
int32 On = 4; // 开关 1开启 2关闭
int32 SortId = 5; // 排序ID
}
// etcd /game/room_config
message RoomConfig {
string Platform = 1; // 平台
int32 Id = 2; // 配置id
string Name = 3; // 配置名称
int32 RoomType = 4; // 房间类型id
int32 On = 5; // 开关 1开启 2关闭
int32 SortId = 6; // 排序ID
repeated ItemInfo Cost = 7; // 进入房间消耗
repeated ItemInfo Reward = 8; // 进入房间奖励
repeated string OnChannelName = 9; // 开启的渠道名称
repeated int32 GameFreeId = 10; // 场次id
repeated int32 Round = 11; // 局数
repeated int32 PlayerNum = 12; // 人数
int32 NeedPassword = 13; // 是否需要密码 1是 2否 3自定义
int32 CostType = 14; // 消耗类型 1AA 2房主 3自定义
int32 Voice = 15; // 是否开启语音 1是 2否 3自定义
string ImageURI = 16; // 奖励图片
}
// etcd /game/room_config_system
message RoomConfigSystem{
string Platform = 1; // 平台
int32 Id = 2; // 配置id
int32 RoomConfigId = 3; // 房间配置id
int32 GameFreeId = 4; // 场次id
int32 Round = 5; // 局数
int32 PlayerNum = 6; // 人数
int32 NeedPassword = 7; // 是否需要密码 1是 2否
int32 CostType = 8; // 消耗类型 1AA 2房主
int32 Voice = 9; // 是否开启语音 1是 2否
int32 State = 10; // 房间状态 1空 2满人(假人)
int32 FullTime = 11; // 房间状态为满人时房间保留多久,单位秒
int32 AutoCreate = 12; // 自动创建开关 1开启 2关闭
int32 AutoCreateTime = 13; // 自动创建时间间隔,单位秒
int32 On = 14; // 开关 1开启 2关闭
}
// etcd /game/client_upgrade
message ClientUpgrade{
string Platform = 1; // 平台
int32 On = 2; // 开关 1开启 2关闭
int32 OnForce = 3; // 强制升级开关 1开启 2关闭
repeated ItemInfo Reward = 4; // 奖励
}
//etcd /game/PopUpWindowConfig
message PopUpWindowConfig{
string Platform = 1; // 平台
repeated PopUpWindowInfo Info = 2;
}
message PopUpWindowInfo{
int32 Id = 1;
string Name = 2;
string Key = 3;
int32 OpenStatus = 4;//1-开启 2-关闭
int32 Weight = 5;//弹窗权重
}