You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

5866 lines
175 KiB

// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// https://developers.google.com/protocol-buffers/
//
syntax = "proto3";
package google.protobuf;
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
option go_package = "github.com/golang/protobuf/ptypes/struct;structpb";
option java_package = "com.google.protobuf";
option java_outer_classname = "StructProto";
option java_multiple_files = true;
option java_generate_equals_and_hash = true;
option objc_class_prefix = "GPB";
//Lobby的消息ID从1~1000
enum CSMsgID {
CS_MSGID_NONE = 0;
CS_MSGID_ACCOUNT_REQ = 11;
CS_MSGID_ACCOUNT_RES = 12;
CS_MSGID_GAME_LIST_REQ = 13;
CS_MSGID_GAME_LIST_RES = 14;
CS_MSGID_PING = 15;
CS_MSGID_VERSION_REQ = 17;
CS_MSGID_VERSION_RES = 18;
CS_MSGID_QUERY_LOGINSYSNOTICE_REQ = 19; //登录界面的公告数据 请求
CS_MSGID_QUERY_LOGINSYSNOTICE_RES = 20; //登录界面的公告数据 回应
CS_MSGID_BIG_MSG_TEST = 21; // 超大消息, 用于测试消息拆分逻辑
CS_MSGID_GAMEAREA_SERVERIP_REQ = 101;//获取各大区游戏服务器ip
CS_MSGID_GAMEAREA_SERVERIP_RES = 102;//获取各大区游戏服务器ip
CS_MSGID_ACCOUNT_SVR_CHG_NOTIFY = 103; // account服务器切换通知
CS_MSGID_BIND_GUEST_FACEBOOK_REQ = 201;
CS_MSGID_BIND_GUEST_FACEBOOK_RES = 202;
CS_MSGID_UNBIND_GUEST_FACEBOOK_REQ = 203;
CS_MSGID_UNBIND_GUEST_FACEBOOK_RES = 204;
CS_MSGID_UPDATE_ACCOUNT_GRADE_REQ = 210; // 玩家评价通知
CS_MSGID_UPDATE_ACCOUNT_GRADE_RES = 211;
}
//CS_MSGID_UPDATE_ACCOUNT_GRADE_REQ
message CSUpdateAccountGradeReq{
int64 uid = 1;
string accountID = 2 [stringlength=256];
int32 grade = 3;
}
//CS_MSGID_UPDATE_ACCOUNT_GRADE_RES
message CSUpdateAccountGradeRes{
int32 ret = 1; // 修改结果返回 1:错误,0 :成功
}
message AccountInfo {
int32 accountType = 1; //0 游客 1 facebook 2 google 10 qq 11 weixin
string accountID = 2 [stringlength=256];
string accountToken = 3 [stringlength=8192];
int32 platformType = 4; // 1 android 2 ios 3 windows
int32 compensation =5 ; // 补偿金
}
message QQPayInfo{
string payToken = 1 [stringlength=256];
string pf = 2 [stringlength=128];
string pfkey = 3 [stringlength=128];
}
message VersionInfo {
// en,comm
string language = 1 [stringlength=32]; //en ,tk,comm
//ios,android,win
string os = 2 [stringlength=128];
//1.2.1.34
string appVersion = 3 [stringlength=32];
string osLanguage = 4 [stringlength=32]; //操作系统语言
string apkChannel = 5 [stringlength=32]; //包的渠道信息,比如华为包(huawei),缺省不填表示google包
string osVersion = 6 [stringlength=128];
string packageName = 7 [stringlength=128]; //包名
int32 packageType = 8; // 包类型
string productId = 9 [stringlength=16];
}
// 游戏服务器上报给lobby服务器信息,包括名字,在线人数,连接服务器的ip地址,端口
// 客户端拉取游戏列表信息
message CSRealmInfo {
int32 realmId = 1;
string name = 2 [stringlength=16];
int32 onlinePlayer = 3;
int32 svrStatus = 4;
int32 configStatus = 5;
string gateUrl = 6 [stringlength=64]; //url|ip:port
string chatGateUrl = 7 [stringlength=64]; //url|ip:port
int32 openTime = 8; // 开服时间
string realmBdcName = 9 [stringlength=32];
int32 showSeq = 10; // 开服顺序
}
message CSAreaServerIPInfo {
string areaName = 1 [stringlength=16];
string areaIP = 2[stringlength=16];
int32 timezone = 3;
int32 minRealmId = 4;
int32 maxRealmId = 5;
}
// 游戏的id要从1000开始
enum CSGameMsgID {
CS_GAMEMSGID_NONE = 0;
CS_GAMEMSGID_LOGIN_REQ = 1001;
CS_GAMEMSGID_LOGIN_RES = 1002;
CS_GAMEMSGID_QUERY_ROLE_REQ = 1003;
CS_GAMEMSGID_QUERY_ROLE_RES = 1004;
CS_GAMEMSGID_PAY_GOOGLE_REQ = 1005; //支付开始
CS_GAMEMSGID_PAY_GOOGLE_RES = 1006;
CS_GAMEMSGID_PAY_GOOGLE_SUCCESS_REQ = 1007;//支付成功,加钻石,返回后客户端才能执行消耗操作(参考googleapi)
CS_GAMEMSGID_PAY_GOOGLE_SUCCESS_RES = 1008;
CS_GAMEMSGID_PAY_DIAMOND_HOLDER_QUERY_REQ = 1009; //查询托管钻石数量开始
CS_GAMEMSGID_PAY_DIAMOND_HOLDER_QUERY_RES = 1010;
CS_GAMEMSGID_PAY_GET_FREE_ITEM_REQ = 1011; // 领取免费礼包
CS_GAMEMSGID_PAY_GET_FREE_ITEM_RES = 1012;
CS_GAMEMSGID_PAY_NEW_ITEM_NOTIFY = 1013; // 商城新物品上架通知
CS_GAMEMSGID_KICK_OFF = 1015;
CS_GAMEMSGID_CHATLOGIN_REQ = 1017; // 聊天登录请求
CS_GAMEMSGID_CHATLOGIN_RES = 1018; // 聊天登录回应
CS_GAMEMSGID_GM_CMD_REQ = 1019; //gm指令列表
CS_GAMEMSGID_GM_CMD_RES = 1020;
CS_GAMEMSGID_QUERY_FRIEND_LIST_REQ = 1021; // 完整的好友列表信息
CS_GAMEMSGID_QUERY_FRIEND_LIST_RES = 1022;
CS_GAMEMSGID_FRIEND_SELF_CHG_NOTIFY = 1025;//通知我的好友数据(自己部分)变化,全量
CS_GAMEMSGID_FRIEND_LIST_CHG_NOTIFY = 1026;//通知我的好友数据(列表部分)变化,增量
CS_GAMEMSGID_KICK_MULTILOGIN = 1030;//被顶下线
CS_GAMEMSGID_QUERY_MAIL_REQ = 1041; //查询邮件列表
CS_GAMEMSGID_QUERY_MAIL_RES = 1042; //查询邮件列表
CS_GAMEMSGID_MAIL_OP_REQ = 1043; //操作邮件
CS_GAMEMSGID_MAIL_OP_RES = 1044; //操作邮件
CS_GAMEMSGID_MAIL_CHG_NOTIFY = 1981; //邮件变化通知,现在只有delete
CS_GAMEMSGID_RENAME_REQ = 1045; //改名
CS_GAMEMSGID_RENAME_RES = 1046; //改名
CS_GAMEMSGID_CHANGE_ICON_REQ = 1047; //换头像
CS_GAMEMSGID_CHANGE_ICON_RES = 1048; //换头像
CS_GAMEMSGID_ICON_DATA_NOTIFY = 1049; //头像数据通知
CS_GAMEMSGID_STATISTICS_CHG = 1050; //角色统计数据变更通知
CS_GAMEMSGID_PING = 1051; //ping,keepalive,
CS_GAMEMSGID_CHATPING = 1052;
CS_GAMEMSGID_CHAT_REQ = 1053; // 聊天请求
CS_GAMEMSGID_CHAT_RES = 1054; // 聊天回应
CS_GAMEMSGID_SYSNOTICE_LAMP = 1055; //走马灯
CS_GAMEMSGID_SYSNOTICE = 1056; //公告
CS_GAMEMSGID_GMCMD = 1057;
CS_GAMEMSGID_QUERY_CHAT_DATA_REQ = 1059; //客户端请求离线消息
CS_GAMEMSGID_QUERY_CHAT_DATA_RES = 1060;
CS_GAMEMSGID_RECV_PRIVATE_CHAT_NOTIFY = 1061; //收到私聊
CS_GAMEMSGID_CHANNEL_CACHE_DATA_REQ = 1062; //请求频道缓存聊天信息
CS_GAMEMSGID_CHANNEL_CACHE_DATA_RES = 1063; //请求频道缓存聊天信息
CS_GAMEMSGID_QUERY_SYSNOTICE_REQ = 1064; //公告
CS_GAMEMSGID_QUERY_SYSNOTICE_RES = 1065; //公告
CS_GAMEMSGID_QUERY_SURVEY_REQ = 1066; // 问卷调查
CS_GAMEMSGID_QUERY_SURVEY_RES = 1067; // 问卷调查
CS_GAMEMSGID_SYNC_POWER_INFO = 1068; // 同步体力数据
CS_GAMEMSGID_CHANGE_ICON_FRAME_REQ = 1069; //换头像框
CS_GAMEMSGID_CHANGE_ICON_FRAME_RES = 1070; //换头像框
CS_GAMEMSGID_BUY_POWER_REQ = 1071; // 购买体力数据
CS_GAMEMSGID_BUY_POWER_RES = 1072; // 购买体力数据
CS_GAMEMSGID_SYSPAYCHANEL_REQ = 1073; //付费通道
CS_GAMEMSGID_SYSPAYCHANEL_RES = 1074; //付费通道
CS_GAMEMSGID_MOP_UP_REQ = 1075; // 扫荡请求
CS_GAMEMSGID_MOP_UP_RES = 1076; // 扫荡返回
CS_GAMEMSGID_COMMON_DYNAMIC_REQ = 1097; //通用协议
CS_GAMEMSGID_COMMON_DYNAMIC_RES = 1098; //通用协议
CS_GAMEMSGID_GAIN_POWER_REQ = 1077; // 领取体力数据
CS_GAMEMSGID_GAIN_POWER_RES = 1078; // 领取体力数据
CS_GAMEMSGID_USE_ITEM_REQ = 1110; //使用物品
CS_GAMEMSGID_USE_ITEM_RES = 1111; //使用物品
CS_GAMEMSGID_TALENT_ACTIVE_REQ = 1112; //
CS_GAMEMSGID_TALENT_ACTIVE_RES = 1113; //
CS_GAMEMSGID_TALENT_OPTIONS_REQ = 1114; //
CS_GAMEMSGID_TALENT_OPTIONS_RES = 1115; //
CS_GAMEMSGID_SET_ITEM_NEWGET_REQ = 1116;
CS_GAMEMSGID_SET_ITEM_NEWGET_RES = 1117;
CS_GAMEMSGID_TALENT_DATA_SYNC = 1118;
CS_GAMEMSGID_QUERY_FRIEND_STATUS_REQ = 1129; //查询好友状态
CS_GAMEMSGID_QUERY_FRIEND_STATUS_RES = 1130;
CS_GAMEMSGID_QUERY_RANK_LIST_REQ = 1131;//查询排行榜列表
CS_GAMEMSGID_QUERY_RANK_LIST_RES = 1132;//查询排行榜列表
CS_GAMEMSGID_QUERY_RANK_SELF_REQ = 1133;//查询排行榜自己信息
CS_GAMEMSGID_QUERY_RANK_SELF_RES = 1134;//查询排行榜自己信息
CS_GAMEMSGID_QUERY_RANK_DETAIL_REQ = 1135;//查询排行榜某个人的详细信息
CS_GAMEMSGID_QUERY_RANK_DETAIL_RES = 1136;//查询排行榜某个人的详细信息
CS_GAMEMSGID_QUERY_RANK_TOP_REQ = 1137;//查询排行榜第一名信息
CS_GAMEMSGID_QUERY_RANK_TOP_RES = 1138;//查询排行榜第一名信息
CS_GAMEMSGID_NOTICE_RANK_CHANGE = 1139;//通知排行榜发生了变化
CS_GAMEMSGID_UPDATE_SELF_RANKSCORE = 1140; //更新自己的排行榜分数
CS_GAMEMSGID_CLI_REPORT_BILL_REQ = 1141;//客户端上报信息,记录一下统计日志
CS_GAMEMSGID_REPORT_CHEAT_REQ = 1142;
CS_GAMEMSGID_REPORT_CHEAT_RES = 1143;
CS_GAMEMSGID_UPDATE_WXRANK = 1144;
CS_GAMEMSGID_ADID_REPORT_REQ = 1149; //上报google adid, ios idfa,广告id
CS_GAMEMSGID_FIREBASE_ID_REPORT_REQ = 1151; //上报firebase id
CS_GAMEMSGID_FIREBASE_SUBSCRIBE_TOPIC = 1152;//s-c 订阅主题
CS_GAMEMSGID_SAVE_CLIENT_DATA_REQ = 1155; //客户端数据
CS_GAMEMSGID_SAVE_CLIENT_DATA_RES = 1156; //客户端数据
CS_GAMEMSGID_QUERY_OTHER_DETAIL_REQ = 1159; //查询玩家详细信息
CS_GAMEMSGID_QUERY_OTHER_DETAIL_RES = 1160; //查询玩家详细信息
CS_GAMEMSGID_TIP_OFF_PLAYER_REQ = 1161; //举报玩家
CS_GAMEMSGID_GAG_CHAT_NOTIFY = 1162;//禁言通知
CS_GAMEMSGID_HIDE_MY_INFO_REQ = 1163; //隐藏自己的个人信息,不让其他人查询
CS_GAMEMSGID_HIDE_MY_INFO_RES = 1164; //隐藏自己的个人信息,不让其他人查询
CS_GAMEMSGID_PAY_PLAYER_PAYINFO_CHG_NOTIFY = 1165; //玩家支付数据变化通知
CS_GAMEMSGID_POWER_CHANGE_NOTIFY = 1168; //总战力变化通知
CS_GAMEMSGID_POWER_CLI_REQ = 1169; //总战力变化通知
CS_GAMEMSGID_FREE_REWARD_REQ = 1170;
CS_GAMEMSGID_FREE_REWARD_RES = 1171;
CS_GAMEMSGID_FREE_REWARD_SYNC = 1172;
CS_GAMEMSGID_SET_LANGUAGE_REQ = 1189; //设置语言
CS_GAMEMSGID_SET_LANGUAGE_RES = 1190; //设置语言
CS_GAMEMSGID_CLIENT_HOT_PATCH_FILE_PUSH = 1191; //客户端热补丁推送
CS_GAMEMSGID_REPORT_INVITE_ME_FBUSERID = 1193;//客户端向服务器上报是谁邀请我的
CS_GAMEMSGID_REPORT_INVITE_ME_FBUSERID_RES = 1194;//服务器回应,客户端收到消息可以向fb删除
CS_GAMEMSGID_SAVE_CLIENT_BIT_FLAG_REQ = 1197; //客户端位数据
CS_GAMEMSGID_SAVE_CLIENT_BIT_FLAG_RES = 1198; //客户端位数据
CS_GAMEMSGID_QUERY_UPSYSNOTICE = 1199; //chat主动下发单条公告
CS_GAMEMSGID_QUESTIONNAIRE_REWARD_REQ = 1120; //调查问卷发送奖励
CS_GAMEMSGID_QUESTIONNAIRE_REWARD_RES = 1121;//调查问卷发送奖励
CS_GAMEMSGID_QUESTIONNAIRE_REWARD_SYN = 1122;//同步信息
CS_GAMEMSGID_QUERY_BAG_CHANGE_HISTORY_LIST_REQ = 1231 ; //查询背包变化列表
CS_GAMEMSGID_QUERY_BAG_CHANGE_HISTORY_LIST_RES = 1232 ; //查询背包变化列表
CS_GAMEMSGID_SYNC_LEVEL_INFO = 1237; // 经验同步
CS_GAMEMSGID_MAIL_SEND_TO_PLAYER_REQ = 1241; //发送邮件
CS_GAMEMSGID_MAIL_SEND_TO_PLAYER_RES = 1242; //发送邮件
// TaskEX
CS_GAMEMSGID_TASKEX_ACCEPT_TASK_REQ = 1260; // 接取任务 请求
CS_GAMEMSGID_TASKEX_ACCEPT_TASK_RES = 1261; // 接取任务 回应
CS_GAMEMSGID_TASKEX_HANDOVER_TASK_REQ = 1266; // 交付任务领取奖励 请求
CS_GAMEMSGID_TASKEX_HANDOVER_TASK_RES = 1267; // 交付任务领取奖励 回应
CS_GAMEMSGID_TASKEX_CHANGE_NOTIFY = 1268; // 通知 任务数据发生改变
CS_GAMEMSGID_TASKEX_DELETE_NOTIFY = 1269; // 通知 有任务需要被清除
CS_GAMEMSGID_TASKEX_UPEXINFO_REQ = 1270; // 更新指定任务的指定index扩展信息
CS_GAMEMSGID_TASKEX_UPEXINFO_RES = 1271; // 更新指定任务的指定index扩展信息
CS_GAMEMSGID_TASKEX_BATCH_UPEXINFO_REQ = 1272; // 批量更新指定任务的扩展信息
CS_GAMEMSGID_TASKEX_BATCH_UPEXINFO_RES = 1273; // 批量更新指定任务的扩展信息
CS_GAMEMSGID_BATCH_TASKEX_HANDOVER_TASK_REQ = 1274; // 交付任务领取奖励 请求
CS_GAMEMSGID_BATCH_TASKEX_HANDOVER_TASK_RES = 1275; // 交付任务领取奖励 回应
// friend
CS_GAMEMSGID_FRIEND_OP_REQ = 1301; //好友操作请求(邀请,同意,拒绝,删除等)
CS_GAMEMSGID_FRIEND_OP_RES = 1302; //好友操作回应
CS_GAMEMSGID_FRIEND_OP_LIST_CHG_NOTIFY = 1303; //好友操作列表变化通知
CS_GAMEMSGID_QUERY_FRIEND_OP_REQ = 1305;//查询好友op信息,全量
CS_GAMEMSGID_QUERY_FRIEND_OP_RES = 1306;//查询好友op信息,全量
CS_GAMEMSGID_FRIEND_STRANGER_LIST_CHG_NOTIFY = 1313; //陌生人列表更新
CS_GAMEMSGID_FRIEND_STRANGER_LIST_DELETE_NOTIFY = 1314; //陌生人列表删除
CS_GAMEMSGID_FRIEND_QUERY_INFO_BY_UID_REQ = 1315; //根据uid查询信息
CS_GAMEMSGID_FRIEND_QUERY_INFO_BY_UID_RES = 1316; //根据uid查询信息
CS_GAMEMSGID_FRIEND_GET_RECOMMENDER_REQ = 1317; //推荐好友
CS_GAMEMSGID_FRIEND_GET_RECOMMENDER_RES = 1318; //推荐好友
CS_GAMEMSGID_FRIEND_QUERY_STRANGER_REQ = 1319; //客户端拉取陌生人列表
CS_GAMEMSGID_FRIEND_QUERY_STRANGER_RES = 1320; //客户端拉取陌生人列表
CS_GAMEMSGID_FRIEND_SET_SETTING_REQ = 1321; //设置
CS_GAMEMSGID_FRIEND_SET_SETTING_RES = 1322; //设置
CS_GAMEMSGID_FRIEND_GIFT_OP_REQ = 1323; //好友礼物操作
CS_GAMEMSGID_FRIEND_GIFT_OP_RES = 1324; //好友礼物操作
CS_GAMEMSGID_FRIEND_GIFT_AUTO_OP_REQ = 1325; //好友礼物自动赠送领取
CS_GAMEMSGID_FRIEND_GIFT_AUTO_OP_RES = 1326; //好友礼物自动赠送领取
CS_GAMEMSGID_FRIEND_SEND_GIFT_NOTIFY = 1327; // 好友赠送自己礼物的通知
CS_GAMEMSGID_GET_FRIEND_GIFT_DATA_REQ = 1328; // 拉取好友礼物的完整数据
CS_GAMEMSGID_GET_FRIEND_GIFT_DATA_RES = 1329; // 拉取好友礼物的完整数据
CS_GAMEMSGID_FRIEND_QUERY_BLACKLIST_REQ = 1330; // 好友 查询黑名单详细
CS_GAMEMSGID_FRIEND_QUERY_BLACKLIST_RES = 1331; // 好友 查询黑名单详细
CS_GAMEMSGID_ROLEBASE_CHG_REQ = 1379;
CS_GAMEMSGID_ROLEBASE_CHG_RES = 1380;
CS_GAMEMSGID_SET_PERSONALIZED_SIGNATURE_REQ = 1400;
CS_GAMEMSGID_SET_PERSONALIZED_SIGNATURE_RES= 1401;
//MarketShop begin
CS_GAMEMSGID_MARKET_SHOP_BUY_GOODS_REQ = 1638; //玩家请求购买商店物品 请求
CS_GAMEMSGID_MARKET_SHOP_BUY_GOODS_RES = 1639; //玩家请求购买商店物品 应答
CS_GAMEMSGID_MARKET_SHOP_REFRESH_REQ = 1640; //玩家获取某个商店数据或刷新某个商店数据请求
CS_GAMEMSGID_MARKET_SHOP_REFRESH_RES = 1641; //玩家获取某个商店数据或刷新某个商店数据应答
//MarketShop end
CS_GAMEMSGID_WAITPLAYER_REMAINTIME_NOTIFY = 1700; //通知game服务器通知客户端等待连接还剩多长时间
CS_GAMEMSGID_WRAP_GAME_LIST_REQ = 1710; // CSGameListReq封装
CS_GAMEMSGID_WRAP_GAME_LIST_RES = 1711;
//--------------------chapter battle-------------
CS_GAMEMSGID_BATTLE_BEGIN_REQ = 1800; // 开始战斗
CS_GAMEMSGID_BATTLE_BEGIN_RES = 1801;
CS_GAMEMSGID_BATTLE_OPTION_REQ = 1802; // 战斗中的操作
CS_GAMEMSGID_BATTLE_OPTION_RES = 1803;
CS_GAMEMSGID_KILLED_MONSTER_REQ = 1804; // 战斗中的奖励
CS_GAMEMSGID_KILLED_MONSTER_RES = 1805;
CS_GAMEMSGID_BATTLE_ACTIVE_ALTAR_REQ = 1806; // 激活祭坛
CS_GAMEMSGID_BATTLE_ACTIVE_ALTAR_RES = 1807;
CS_GAMEMSGID_BATTLE_SYNC_DATA = 1808;
CS_GAMEMSGID_ON_PICKUP_MONSTER_REWARD_REQ = 1809; // 章节战斗捡奖励
CS_GAMEMSGID_ON_PICKUP_MONSTER_REWARD_RES = 1810;
CS_GAMEMSGID_ONTICK_BATTLE_ENTITY_REQ = 1811;
CS_GAMEMSGID_ONTICK_BATTLE_ENTITY_RES = 1812;
CS_GAMEMSGID_ON_SYNC_EXT_DROP_REWARD_DATA = 1813;
CS_GAMEMSGID_ON_SYNC_CHAPTER_BATTLE_WIN = 1814;
CS_GAMEMSGID_ON_BATTLE_PUSH_PROP_DATA_REQ = 1815;
CS_GAMEMSGID_ON_BATTLE_PUSH_PROP_DATA_RES = 1816;
CS_GAMEMSGID_ON_GAIN_BATTLE_REWARD_REQ = 1817;
CS_GAMEMSGID_ON_GAIN_BATTLE_REWARD_RES = 1818;
CS_GAMEMSGID_ON_GAIN_ALL_BATTLE_REWARD_REQ = 1819;
CS_GAMEMSGID_ON_GAIN_ALL_BATTLE_REWARD_RES = 1820;
CS_GAMEMSGID_ON_BATTLE_DEFEAT_REQ= 1821;
CS_GAMEMSGID_ON_BATTLE_DEFEAT_RES= 1822;
//--------------------chapter battle-------------
CS_GAMEMSGID_PLAYER_GOODS_CHG_NOTIFY = 1900; //玩家物品变化通知
CS_GAMEMSGID_GOODS_GET_PUSH = 1901;
//name begin
CS_GAMEMSGID_NAME_QUERY_USED_REQ = 2301;
CS_GAMEMSGID_NAME_QUERY_USED_RES = 2302;
//name end
CS_GAMEMSGID_CLIENT_TRIGGER_ITEM_ARRIVE_REQ = 2313; // 客户端触发物品上架请求
CS_GAMEMSGID_PAY_ITEM_STOCK_INFO_REQ = 2315; // 商品库存信息
CS_GAMEMSGID_PAY_ITEM_STOCK_INFO_RES = 2316; // 商品库存信息
CS_GAMEMSGID_PLAYER_QUERY_OTHER_ROLE_INFO_REQ = 3000; //查询一个玩家数据 请求
CS_GAMEMSGID_PLAYER_QUERY_OTHER_ROLE_INFO_RES = 3001; //查询一个玩家数据 应答
CS_GAMEMSGID_PLAYER_SEARCH_ROLE_BYNAME_REQ = 3002; //通过玩家名称搜索玩家 请求
CS_GAMEMSGID_PLAYER_SEARCH_ROLE_BYNAME_RES = 3003; //通过玩家名称搜索玩家 应答
CS_GAMEMSGID_LOG_CLIENT_BDC_REQ = 3201; // 客户端bdc日志备份
CS_GAMEMSGID_LOG_CLIENT_BDC_RES = 3202; // 客户端bdc日志备份
CS_GAMEMSGID_LOG_CLIENT_TA_REQ = 3203; // 客户端ta日志备份
CS_GAMEMSGID_LOG_CLIENT_TA_RES = 3204; // 客户端ta日志备份
CS_GAMEMSGID_LOG_CLIENT_BDC_INFO_REQ = 3205; // 客户端bdc serverbean
CS_GAMEMSGID_LOG_CLIENT_BDC_INFO_RES = 3206; // serverbean
//---------------------------------------ExchangeCode START--------------------------------------
CS_GAMEMSGID_EXCHANGE_CODE_TAKE_REQ = 4171; //兑换码兑换
CS_GAMEMSGID_EXCHANGE_CODE_TAKE_RES = 4172;//兑换码兑换
//---------------------------------------ExchangeCode END --------------------------------------
CS_GAMEMSGID_GM_GET_ONLINEPLAYER_NOTIFY = 4180; // GM通知在线人数
CS_GAMEMSGID_QUERY_SYSNOTICE_IMG_REQ = 4185; //公告背景图片
CS_GAMEMSGID_QUERY_SYSNOTICE_IMG_RES = 4186; //公告背景图片
//--------------------------------------- DownLoad Resource START --------------------------------------
CS_GAMEMSGID_DOWNLOAD_RESOURCE_REQ = 4190; //下载资源相关
CS_GAMEMSGID_DOWNLOAD_RESOURCE_RES = 4191;
//--------------------------------------- DownLoad Resource END --------------------------------------
CS_GAMEMSGID_WORLDGLOBALDATA_NOTIFY = 4360;//全局数据通知
CS_GAMEMSGID_EQUIP_COMBAT_PREVIEW = 4997;
CS_GAMEMSGID_EQUIP_COMBAT_PREVIEW_RES = 4998;
CS_GAMEMSGID_EQUIP_BATCHSELL = 4999;
CS_GAMEMSGID_EQUIP_BATCHSELL_RES = 5000;
// 潘多拉新消息
CS_GAMEMSGID_EQUIP_PUT_DEPOT = 5001; //装备放入或者去除仓库
CS_GAMEMSGID_EQUIP_PUT_DEPOT_RES = 5002;
CS_GAMEMSGID_EQUIP_OP_REQ = 5003; // 装备操作
CS_GAMEMSGID_EQUIP_OP_RES = 5004;
CS_GAMEMSGID_EQUIP_BUY_DEPOT = 5005; //装备仓库购买
CS_GAMEMSGID_EQUIP_BUY_DEPOT_RES = 5006;
CS_GAMEMSGID_HERO_PROP_CHG_NOTIFY = 5007; // 属性变更通知
CS_GAMEMSGID_BAG_SYNC = 5008; //背包同步
CS_GAMEMSGID_HERO_SYNC = 5009; //属性装备同步
CS_GAMEMSGID_EQUIP_SET_NEWGET = 5010; //装备设置新获得标签已读
CS_GAMEMSGID_EQUIP_SET_NEWGET_RES = 5011;
CS_GAMEMSGID_EQUIP_SYNC = 5012; //装备信息同步
CS_GAMEMSGID_EQUIP_DEL_SYNC = 5013;
CS_GAMEMSGID_SKIN_SYNC = 5015; //时装皮肤同步
CS_GAMEMSGID_SKIN_PUTON = 5016;
CS_GAMEMSGID_SKIN_PUTON_RES = 5017;
CS_GAMEMSGID_SKIN_SET_NEWGET = 5018;
CS_GAMEMSGID_SKIN_SET_NEWGET_RES = 5019;
CS_GAMEMSGID_GEM_SYNC = 5020; //宝石
CS_GAMEMSGID_GEM_WEAR = 5021;
CS_GAMEMSGID_GEM_WEAR_RES = 5022;
CS_GAMEMSGID_GEM_COMPOSE = 5023;
CS_GAMEMSGID_GEM_COMPOSE_RES = 5024;
CS_GAMEMSGID_GEM_COMPOSE_ONE = 5025;
CS_GAMEMSGID_GEM_COMPOSE_ONE_RES = 5026;
CS_GAMEMSGID_GEM_COMPOSE_ONE_SAVE = 5027;
CS_GAMEMSGID_GEM_COMPOSE_ONE_SAVE_RES = 5028;
CS_GAMEMSGID_GEM_LOCK = 5029;
CS_GAMEMSGID_GEM_LOCK_RES = 5030;
CS_GAMEMSGID_GEM_SETNEWGET = 5031;
CS_GAMEMSGID_GEM_SETNEWGET_RES = 5032;
CS_GAMEMSGID_GEM_CHANGE_SYNC = 5033;
CS_GAMEMSGID_EQUIPLIST_SYNC = 5040;
CS_GAMEMSGID_EQUIPDEPOT_SYNC = 5041;
CS_GAMEMSGID_ITEMLIST_SYNC = 5042;
CS_GAMEMSGID_GEMLIST_SYNC = 5043;
CS_GAMEMSGID_GET_ACTIVITY_INFO_REQ = 5098; //活动信息
CS_GAMEMSGID_GET_ACTIVITY_INFO_RES = 5099; //
CS_GAMEMSGID_SIGN_GET_AWARD_REQ = 5100; //领取签到活动奖励
CS_GAMEMSGID_SIGN_GET_AWARD_RES = 5101;
CS_GAMEMSGID_SIGN_RE_SING_REQ = 5102;//补签
CS_GAMEMSGID_SIGN_RE_SING_RES = 5103;
CS_GAMEMSGID_SIGN_INFO_SYNC = 5104; //同步签到数据
CS_GAMEMSGID_FIST_PAYMENT_AWARD_REQ = 5105; //首充奖励
CS_GAMEMSGID_FIST_PAYMENT_AWARD_RES = 5106;
CS_GAMEMSGID_FIST_PAYMENT_INFO_SYNC = 5107; //同步首充数据
CS_GAMEMSGID_PUSH_POP_PACKAGE = 5108; //推送
CS_GAMEMSGID_SYNC_POP_PACKAGE = 5109; //同步
CS_GAMEMSGID_HANDBOOK_GET_AWARD_REQ = 5110; //领取手册奖励
CS_GAMEMSGID_HANDBOOK_GET_AWARD_RES = 5111;
CS_GAMEMSGID_HANDBOOK_INFO_SYNC = 5112; //同步签到数据
CS_GAMEMSGID_RECRUIT_REQ = 5120; //抽奖
CS_GAMEMSGID_RECRUIT_RES = 5121;
CS_GAMEMSGID_RECRUIT_INFO_SYNC = 5122; //抽奖数据
CS_GAMEMSGID_RECRUIT_CHOOSE_REWARD_REQ = 5123;
CS_GAMEMSGID_RECRUIT_CHOOSE_REWARD_RES = 5124;
CS_GAMEMSGID_ON_CHANGE_STAR_WEAR_REQ = 5200;
CS_GAMEMSGID_ON_CHANGE_STAR_WEAR_RES = 5201;
CS_GAMEMSGID_ON_CHANGE_WING_SKIN_REQ = 5202;
CS_GAMEMSGID_ON_CHANGE_WING_SKIN_RES = 5203;
CS_GAMEMSGID_ON_UPGRADE_MAIN_WING_REQ = 5204;
CS_GAMEMSGID_ON_UPGRADE_MAIN_WING_RES = 5205;
CS_GAMEMSGID_ON_UPGRADE_WING_SKIN_REQ = 5206;
CS_GAMEMSGID_ON_UPGRADE_WING_SKIN_RES = 5207;
CS_GAMEMSGID_ON_SYNC_WING_DATA = 5208;
CS_GAMEMSGID_ON_MARK_WING_NEW_GET_REQ = 5209;
CS_GAMEMSGID_ON_MARK_WING_NEW_GET_RES = 5210;
CS_GAMEMSGID_SYSTEM_UNLOCK_INFO_LOAD_SYN = 5311;//推送已经解锁的系统
CS_GAMEMSGID_SYSTEM_UNLOCK_INFO_CHANGE_SYN = 5312;
CS_GAMEMSGID_PASS_CARD_LOAD_SYN = 5313;//通行证
CS_GAMEMSGID_PASS_CARD_GET_AWARD_REQ = 5314;
CS_GAMEMSGID_PASS_CARD_GET_AWARD_RES = 5315;
CS_GAMEMSGID_HOMEAD_AD_LOAD_SYN = 5316;//首页广告
CS_GAMEMSGID_HOMEAD_AD_GET_AWARD_REQ = 5317;//首页广告
CS_GAMEMSGID_HOMEAD_AD_GET_AWARD_RES = 5318;//首页广告
CS_GAMEMSGID_EQUIP_SHOW_CHANGE_REQ = 5319; // 幻化修改
CS_GAMEMSGID_EQUIP_SHOW_CHANGE_RES = 5320; // 幻化修改
CS_GAMEMSGID_BEGINNER_GUIDE_CHANGE_REQ = 5322;
CS_GAMEMSGID_BEGINNER_GUIDE_CHANGE_RES = 5323;
CS_GAMEMSGID_BEGINNER_GUIDE_AWARD_REQ = 5327;
CS_GAMEMSGID_BEGINNER_GUIDE_AWARD_RES = 5328;
CS_GAMEMSGID_EQUIP_SHOW_INFO_SYN = 5324; //幻化获取更新
CS_GAMEMSGID_HOMEAD_AD_START_SYN = 5325;//首页广告出现
CS_GAMEMSGID_HOMEAD_AD_PASS_REQ = 5329;//花费钻石跳过广告
CS_GAMEMSGID_HOMEAD_AD_PASS_RES = 5330;//花费钻石跳过广告
CS_GAMEMSGID_CARD_GET_DAILY_AWARD_REQ = 5331;//月卡领取每日奖励
CS_GAMEMSGID_CARD_GET_DAILY_AWARD_RES = 5332;//
CS_GAMEMSGID_MONTHLY_CARD_INFO_SYN = 5336;//
CS_GAMEMSGID_BATTLE_PASS_AWARD_REQ = 5337;// 领取battlepass 奖励
CS_GAMEMSGID_BATTLE_PASS_AWARD_RES = 5338;//
CS_GAMEMSGID_BATTLE_PASS_INFO_SYN = 5339;//
CS_GAMEMSGID_EXTRA_EQUIP_SYN = 5501; // 额外装备同步信息
//给客户端上报的事件
CS_GAMEMSGID_BUTRYING_POINT_SYN = 5506;//
//广告相关
CS_GAMEMSGID_AD_START_REQ = 5507;//广告开始播放
CS_GAMEMSGID_AD_START_RES = 5508;
CS_GAMEMSGID_AD_END_REQ = 5509;//广告播放结束
CS_GAMEMSGID_AD_END_RES = 5510;
CS_GAMEMSGID_HOMEAD_AD_GIVE_MONEY_SYN = 5511;//首页广告给钻石
CS_GAMEMSGID_AD_GET_INFO_REQ = 5512;//广告冷却,剩余次数等信息拉取
CS_GAMEMSGID_AD_GET_INFO_RES = 5513;
//聊天屏蔽
CS_GAMEMSGID_GET_CHAT_BLACKLIST_REQ = 5801; //请求获取聊天屏蔽黑名单
CS_GAMEMSGID_GET_CHAT_BLACKLIST_RES = 5802;
CS_GAMEMSGID_ADD_CHAT_BLACKLIST_REQ = 5803; //增加聊天屏蔽黑名单
CS_GAMEMSGID_ADD_CHAT_BLACKLIST_RES = 5804;
CS_GAMEMSGID_DEL_CHAT_BLACKLIST_REQ = 5805; //解除聊天屏蔽黑名单
CS_GAMEMSGID_DEL_CHAT_BLACKLIST_RES = 5806;
//活动排行
CS_GAMEMSGID_QUERY_ACT_RANK_LIST_REQ = 6200;//查询排行榜列表
CS_GAMEMSGID_QUERY_ACT_RANK_LIST_RES = 6201;//查询排行榜列表
CS_GAMEMSGID_QUERY_ACT_RANK_ACTIVITY_LIST_REQ = 6202;//查询排行榜活动
CS_GAMEMSGID_QUERY_ACT_RANK_ACTIVITY_LIST_RES = 6203;//查询排行榜活动
CS_GAMEMSGID_ACTIVITY_SNC_INFO=6213;//活动同步信息
CS_GAMEMSGID_PEAKLEVEL_ADDPOINT = 7001; //巅峰加点
CS_GAMEMSGID_PEAKLEVEL_ADDPOINT_RES = 7002;
CS_GAMEMSGID_PEAKLEVEL_RESETPOINT = 7003; //巅峰点重置
CS_GAMEMSGID_PEAKLEVEL_RESETPOINT_RES = 7004;
CS_GAMEMSGID_PEAKLEVEL_SYNC = 7005;
CS_GAMEMSGID_CB_START_REQ = 7100;
CS_GAMEMSGID_CB_START_RES = 7101;
CS_GAMEMSGID_CB_FINISH_REQ = 7102;
CS_GAMEMSGID_CB_FINISH_RES = 7103;
CS_GAMEMSGID_CB_LEAVE_REQ = 7104;
CS_GAMEMSGID_CB_LEAVE_RES = 7105;
CS_GAMEMSGID_CB_GETLAYERREWARD_REQ = 7106;
CS_GAMEMSGID_CB_GETLAYERREWARD_RES = 7107;
CS_GAMEMSGID_RANK_PLAYER_BYLEVEL_REQ = 7108;
CS_GAMEMSGID_RANK_PLAYER_BYLEVEL_RES = 7109;
CS_GAMEMSGID_CBC_PLAYER_SYNC = 7111;
CS_GAMEMSGID_PAY_WSJSAPI_REQ = 7201;
CS_GAMEMSGID_PAY_WSJSAPI_RES = 7202;
CS_GAMEMSGID_PresetSaveReq = 7301;
CS_GAMEMSGID_PresetSaveRes = 7302;
CS_GAMEMSGID_PresetBuyOneReq = 7303;
CS_GAMEMSGID_PresetBuyOneRes = 7304;
CS_GAMEMSGID_PresetRenameReq = 7305;
CS_GAMEMSGID_PresetRenameRes = 7306;
CS_GAMEMSGID_PresetApplyReq = 7307;
CS_GAMEMSGID_PresetApplyRes = 7308;
CS_GAMEMSGID_PlayerOpInfoReq = 7402;
CS_GAMEMSGID_FrapBootInfoSYNC = 7403;
CS_MULT_FRAP_BOOT_INFO_SYNC = 7405;
CS_GAMEMSGID_BATTLEPING =7407;
CS_GAMEMSGID_JOIN_ROOM_REQ = 7408;
CS_GAMEMSGID_JOIN_ROOM_RES = 7409;
CS_GAMEMSGID_ROOM_INFO_SYNC = 7410;
CS_GAMEMSGID_BATTLE_MODE_SYNC = 7411;
}
// CS_GAMEMSGID_ACTIVITY_SNC_INFO
message CSActivityInfoSync{
repeated DBActInfo activityInfo = 1 [repeatedcount=32];//活动相关信息
}
// CS_GAMEMSGID_TREASURE_INFO_SYNC=6210;
message CSTreasureInfoSync{
repeated TreasureActData treasureActData = 1 [repeatedcount = 4]; //宝藏数据
}
// CS_GAMEMSGID_TREASURE_AWARD_REQ=6211;//领取奖励请求
message CSTreasureAwardReq{
int32 actId=1;
int32 taskId=2;
}
//CS_GAMEMSGID_TREASURE_AWARD_RES=6212;//领取奖励返回
message CSTreasureAwardRes{
int32 ret=1;
repeated TypeIDValue32 rewards = 2 [repeatedcount = 30]; //领取得到的奖励
int32 taskId=3;
}
//CS_GAMEMSGID_AD_GET_INFO_REQ
message CSAdGetInfoReq{
int32 id =1;//如果id是0,就全发,否则只发一条
}
//CS_GAMEMSGID_AD_GET_INFO_RES
message CSAdGetInfoRes{
repeated DBADInfo infos = 1 [repeatedcount = 16];
}
message DBADInfo {
int32 id = 1;
int32 getCount = 2;//今日已经看了多少次
int64 coldTime = 3;//冷却时间剩余xx秒
}
//CS_GAMEMSGID_AD_START_REQ
message CSAdStartReq{
int32 adInternalId = 1;
string advCode = 2 [stringlength=64];
}
//CS_GAMEMSGID_AD_START_RES
message CSAdStartRes{
}
//CS_GAMEMSGID_AD_END_REQ
message CSAdEndReq{
}
//CS_GAMEMSGID_AD_END_RES
message CSAdEndRes{
}
//CS_GAMEMSGID_BUTRYING_POINT_SYN
message CSButryingPointSyn{
string type = 1 [stringlength=64]; //埋点代码
}
//CS_GAMEMSGID_EQUIP_COMBAT_PREVIEW
message CSEquipCombatPreview {
int32 equipId = 1;
}
//CS_GAMEMSGID_EQUIP_COMBAT_PREVIEW_RES
message CSEquipCombatPreviewRes {
int32 equipId = 1;
int32 combatChange = 2;
}
// CS_GAMEMSGID_EQUIP_OP_REQ
message CSEquipOpReq {
int32 opType = 1; // 1,分解 2,装备,3替换,4锁定,5解锁
int32 index = 2;
int32 pos = 3; //穿戴需要,位置
}
// CS_GAMEMSGID_EQUIP_BATCHSELL
message CSEquipBatchSell { //一键分解
repeated int32 index = 1[repeatedcount = 256];
}
// CS_GAMEMSGID_EQUIP_BATCHSELL_RES
message CSEquipBatchSellRes {
CSErrCode ret = 2;
repeated int32 index = 1[repeatedcount = 256];
repeated TypeIDValueString getItems = 3 [repeatedcount = 12];
}
// CS_GAMEMSGID_EQUIP_OP_RES
message CSEquipOpRes {
CSErrCode ret = 1;
int32 opType = 2; // 1,分解 2,装备,3替换,4锁定,5解锁
repeated TypeIDValueString getItems = 3 [repeatedcount = 12];
int32 index = 4;
}
// CS_GAMEMSGID_EQUIP_SET_NEWGET //设置新获得标签已读
message CSEquipSetNewGet {
int32 equipId = 1;//0表示全部
}
// CS_GAMEMSGID_EQUIP_SET_NEWGET_RES
message CSEquipSetNewGetRes {
int32 equipId = 1;//0表示全部
}
// CS_GAMEMSGID_EQUIP_BUY_DEPOT //购买装备仓库
message CSEquipBuyDepot {
int32 index = 1; //1,2,3,4 表示第几个仓库
}
// CS_GAMEMSGID_EQUIP_BUY_DEPOT_RES
message CSEquipBuyDepotRes {
int32 index = 1;
CSErrCode ret = 2;
}
// CS_GAMEMSGID_EQUIP_PUT_DEPOT
message CSEquipPutDepot {
int32 depotId = 1;
int32 index = 2;
int32 putType = 3; //1放入,2取出
}
// CS_GAMEMSGID_EQUIP_PUT_DEPOT_RES
message CSEquipPutDepotRes {
int32 depotId = 1;
int32 index = 2;
int32 putType = 3; //1放入,2取出
CSErrCode ret = 4;
}
// CS_GAMEMSGID_EXTRA_EQUIP_OP_REQ
message CSExtraEquipOpReq {
int32 opType = 1; // 0,卖出 1,分解 2,装备
int32 idx = 2; // 下标
}
// CS_GAMEMSGID_EXTRA_EQUIP_OP_RES
message CSExtraEquipOpRes {
int32 ret = 1;
int32 opType = 2; // 0,卖出 1,分解 2,装备
repeated TypeIDValue32 getItems = 3 [repeatedcount = 6];
repeated DBEquipment payEquipment = 4 [repeatedcount = 8]; // 充值定制装备
}
// CS_GAMEMSGID_EXTRA_EQUIP_SYN
message CSExtraEquipSyn {
repeated DBEquipment payEquipment = 1 [repeatedcount = 8]; // 充值定制装备
}
// CS_GAMEMSGID_SKIN_PUTON
message CSSkinPuton {
int32 skinId = 1;
}
// CS_GAMEMSGID_SKIN_PUTON_RES
message CSSkinPutonRes {
int32 skinId = 1;
CSErrCode ret = 4;
DBSkinData skinData = 2;
}
// CS_GAMEMSGID_SKIN_SET_NEWGET //设置新获得标签已读
message CSSkinSetNewGet {
}
// CS_GAMEMSGID_SKIN_SET_NEWGET_RES
message CSSkinSetNewGetRes {
}
message DBKnight {
DBHero dbHero = 1; // 骑士 pdl
HeroPropView propView = 2; //最终属性值,登录后会重新计算
}
// CS_GAMEMSGID_HERO_PROP_CHG_NOTIFY
message CSHeroPropChgNotify {
int32 descId = 1;
repeated ID32Value64 chgProp = 2 [repeatedcount = 512];
}
message DBPandoraBag {
repeated DBBagItem itemList = 1 [repeatedcount = 512];//暂时定这么大
repeated DBEquipment equipList = 2 [repeatedcount = 256]; //装备背包
repeated DBEquipment equipDepot = 3 [repeatedcount = 400]; //装备仓库
int32 euqipDepotCount = 4; //仓库已经解锁个数,最多4个
int32 equipIdSeq = 5;
repeated DBGem gemList = 6 [repeatedcount = 1300];//暂时定这么大
DBGem composeTempOld = 7;//合成临时的
DBGem composeTempNew = 8;//合成临时的
}
message DBBagItem{
int32 Id = 1 ;
int64 Count = 2;
bool newGet = 3;
}
//CS_GAMEMSGID_QUERY_SYSNOTICE_IMG_REQ = 1066; //公告背景图片
message CSQuerySysNoticeImgReq {
string lang = 1 [stringlength=16]; //语言
}
//CS_GAMEMSGID_QUERY_SYSNOTICE_IMG_RES = 1067; //公告背景图片
message CSQuerySysNoticeImgRes {
string lang = 1 [stringlength=16]; //语言
string pic = 2 [stringlength=256];//图片
}
// CS_GAMEMSGID_GM_GET_ONLINEPLAYER_NOTIFY = 4180; // GM通知在线人数
message CSGmGetOnlinePlayerNotify
{
int32 onlinePlayer = 1;
}
//CS_MSGID_BIG_MSG_TEST = 21; // 超大消息, 用于测试消息拆分逻辑
message CSBigMsgTest {
repeated int32 data = 1 [repeatedcount=81920]; // 320k
}
message IDValue32 {
int32 id = 1;
int32 value = 2;
}
message ID32Value64 {
int32 id = 1;
int64 value = 2;
}
message PropValue {
int32 id = 1;
int64 value = 2;
bool max = 3;
}
message IDValue32Up {
int32 Id = 1;
int32 Value = 2;
}
message IDValue64 {
int64 id = 1;
int64 value = 2;
}
message IDValue64Up {
int64 Id = 1;
int64 Value = 2;
}
message IDStringValue{
string id = 1 [stringlength = 64];
int64 value = 2;
}
message TypeIDValue32{
int32 type = 1; //类型
int32 id = 2; //ID
int32 value = 3; //值
}
message TypeIDValueString{
int32 type = 1; //类型
string id = 2 [stringlength=64]; //ID
int32 value = 3; //值
}
//玩家货币类型(其实数值类型也行,比如体力,精力),
enum CurrencyType
{
CurrencyType_None = 0;
CurrencyType_Chip = 1; //之前的筹码(金币)
CurrencyType_Diamond = 2; //钻石
CurrencyType_Max = 3;
}
enum PandoraItemUseType{
PandoraItemUseType_None=0;
PandoraItemUseType_Level=2;//玩家等级条件
}
enum MarketShopType
{
MarketShopType_None = 0;
MarketShopType_Common = 1; //普通
}
//物品类型(所有物品)
enum GoodsType
{
GoodsType_None = 0;
GoodsType_Equipment = 1; //装备
GoodsType_Items = 2;//消耗普通物品
GoodsType_Exp = 3; //经验
GoodsType_EquipSkin = 4; //时装
GoodsType_Gem = 5; //宝石
GoodsType_BattleReward = 6; //奖励关卡
GoodsType_Props = 7; //属性
GoodsType_Wing = 8; //翅膀
GoodsType_Link = 9; //无实际用处
GoodsType_ContBattle = 10; //boss连战
GoodsType_Size = 11; // 实际使用
}
enum DropType
{
DropType_None = 0;
DropType_CommDrop = 2000; //普通掉落
DropType_OtherDrop = 2001; //世界掉落
}
enum RoomMode{
RoomMode_None = 0;
RoomMode_Mode1v1 = 1;//聊天入口
RoomMode_Mode5v5 = 2;//聊天入口
}
enum FeatureSwitch{
FeatureSwitch_None = 0;
FeatureSwitch_Chat_Import = 1;//聊天入口
FeatureSwitch_CDK_Import = 2;//cdk入口
}
// 客户端显示的错误码(统一)
enum CSErrCode {
CSErrCode_None = 0;
CSErrCode_Fail = 1; //操作失败
CSErrCode_ServerMaintenance = 8000; //服务器维护中
CSErrCode_SysFailure = 9999; // 系统错误
// 从10000开始,避免和已有错误码冲突
CSErrCode_FunctionClose = 10000; // 功能已关闭
CSErrCode_IncludeIllegalWord = 10003; //含敏感词汇
CSErrCode_NameRepeat = 10004; //名字重复
CSErrCode_FreezePlayer = 10016; // 冻结玩家
CSErrCode_AlreadyReward = 10017; // 任务奖励已领取
CSErrCode_TaskNotExist = 10018; // 任务不存在
CSErrCode_TaskNotFinish = 10019; // 任务未完成
CSErrCode_GetRewardCondition_Error = 10020; // 领取奖励条件不满足
CSErrCode_TaskAlreadyExist = 10021; // 任务已经存在
CSErrCode_ThisTaskTypeCannotGiveUp = 10023; // 该类型任务无法放弃
CSErrCode_TaskAlreadyHandover = 10024; // 任务已经交付了(完成了)
CSErrCode_ServerIsStopping = 10030; // 正在停服
CSErrCode_NotEnoughItem = 10031; // 物品不够
CSErrCode_LvLimit_Sys = 10038; //等级已达上限
CSErrCode_CostChip_NotEnough = 10044; //金币不足
CSErrCode_CostDiamond_NotEnough = 10045; //钻石不足
CSErrCode_Level_NotEnough = 10046; //等级不足
CSErrCode_LoginRepeat = 10047; //账号已经在其他设备登录
CSErrCode_LoginGameDie = 10048; //你所在的服务目前正在维护中,暂时无法登录
CSErrCode_BuyTimes_NotEnough = 10051; //可购买次数不足
CSErrCode_NotEnoughEquipSpace = 10059; //装备空间不足
CSErrCode_InvalidToken = 10075; //无效token
CSErrCode_InvalidAccount = 10076; //无效账号(重启导致)
CSErrCode_ResetGame = 10077; //重新启动游戏
CSErrCode_NotEnoughOtherCoin = 10078; //其他代币不足
CSErrCode_PlayerMail_NotSpace = 11002; //邮件箱空间不足
CSErrCode_MarketShop_NotExist = 11003; //商店不存在
CSErrCode_MarketShop_MaxRefreshTimes = 11004; //达到最大刷新次数
CSErrCode_Target_NotExist = 11007; //目标不存在
CSErrCode_MaxLimit_Sys = 11013; //数量已经达到上限
// 好友错误码
CSErrCode_NotFriend = 11020; //不是好友关系
CSErrCode_RefuseAllFriend = 11021; //对方拒绝添加好友
CSErrCode_TargetFriendListIsFull = 11022; //对方好友列表满了
CSErrCode_InsertFriendOpList = 11023; //已提交好友申请
CSErrCode_FriendOpListIsFull = 11024; //好友申请表满了
CSErrCode_SelfFriendListIsFull = 11025; //自己好友列表满了
CSErrCode_AlreadySendGift = 11026; //今天已经送过好友礼物了
CSErrCode_SendLimit = 11027; // 赠送超过上限
CSErrCode_RecvLimit = 11028; // 领取超过上限
CSErrCode_NoGift = 11029; // 没有礼物
CSErrCode_TryGetFriendOpLater = 11030; // 稍后再次尝试
CSErrCode_In_Target_Blacklist = 11031; // 在对方黑名单
CSErrCode_In_Self_Blacklist = 11032; // 在自己黑名单
CSErrCode_Not_Blacklist = 11033; // 不在黑名单
CSErrCode_NotSameLogicWorld = 11034; // 不是同一个逻辑world
CSErrCode_Chat_BlackList_Max = 11035; // 屏蔽列表已达上限
// 战斗校验错误码
CSErrCode_BattleVersionError = 11057; //战斗版本号对不上
CSErrCode_LowBattleVersion = 11058; //低版本战斗
CSErrCode_PlayerWaitLogin = 100202; //服务器已经满了,等待登录中
CSErrCode_Function_NotOpen = 100203; //功能还未开放
CSErrCode_Pay_NoStock = 100600; // 商品库存不足
CSErrCode_Pay_InvalidTime = 100601; // 商品不在有效期内
CSErrCode_Pay_BuyCountLimit = 100602; // 购买次数限制
CSErrCode_Pay_ConsumeItemLimit = 100603; // 消耗道具不够
CSErrCode_Pay_VipLimit = 100604; // vip等级限制
CSErrCode_Pay_ItemNotValid = 100605; // 通用, 商品目前无法购买
CSErrCode_Pay_MoneyNotEqual = 100609; // 支付金额不等于商品金额
CSErrCode_Pay_ItemIdNotEqual = 100610; // 购买商品id不等于请求商品id
CSErrCode_Pay_ItemOrderNotFinish = 100611; // 交易未完成
CSErrCode_MailNotExist = 104401; // 邮件不存在
CSErrCode_MailAlreadyGot = 104402; // 已经领取了
CSErrCode_MailOpNotFinish = 104403; // 正在领取,请等待
CSErrCode_MailConditionNotFinish = 104404; // 邮件领取条件为达到
CSErrCode_Task_PreviousQuestNotFinish = 130502; // 前置任务还未完成
CSErrCode_Task_InvaildTaskID = 130505; // 无效的任务ID
CSErrCode_Chat_TargetOffLine = 130901; //对方离线
CSErrCode_Chat_WorldChatCd = 130902; //世界聊天cd
CSErrCode_Chat_EnableMsg = 130903; //聊天禁言了
CSErrCode_Rank_StopUpdate = 131001; //排行榜已经停止更新了
CSErrCode_Rank_ScoreLimit = 131002; //上榜分数不够
CSErrCode_Rank_TypeError = 131003; //类型错误
CSErrCode_Sys_Unlocked = 131411; //系统 已经解锁
CSErrCode_Sys_Can_Not_Unlock = 131412; //系统 不能解锁
CSErrCode_Sys_Not_Unlock = 131413; //系统 未解锁
CSErrCode_ExchangeCode_Err = 131471; // 兑换码不存在或者已经过期
CSErrCode_ExchangeCode_NotStart = 131472; // 兑换码开始兑换时间未到
CSErrCode_ExchangeCode_Expire = 131473; // 兑换码已过期
CSErrCode_ExchangeCode_BeOver = 131474; // 兑换码领完了
CSErrCode_ExchangeCode_Received = 131475; // 兑换码领过了
CSErrCode_Desc_NotFound = 133001; // 找不到配置
CSErrCode_ActRank_End_Err = 133200; //排行榜结束
CSErrCode_EquipDepotBuyFail = 134001; //装备仓库购买失败
CSErrCode_EquipDecomposeFail = 134002; //装备分解失败
CSErrCode_CanJoinBattleFail = 134003; //进入战斗失败
CSErrCode_BattleDefeatFail = 134004; //战斗不可以失败
}
enum HttpErrorStatusCode{
HttpErrorStatusCode_None = 0;
HttpErrorStatusCode_Success = 200;
HttpErrorStatusCode_Error = 400;
HttpErrorStatusCode_SignError = 601; //签名校验失败
HttpErrorStatusCode_OtherError = 602; //其他
HttpErrorStatusCode_MiniPayError = 603; //minipay报错
}
message DBItemInfo {
int32 id = 1;
int32 count = 2;
int64 uniqueID = 3;//唯一id,每个物品有唯一id
int64 expireTime = 4;//过期时间,为0表示没有过期时间
}
//玩家账号额外数据
message DBAccountExData{
repeated int32 downloadResource = 1 [repeatedcount=32];//已经下载完成的资源
string channel = 2 [stringlength=32]; // 账号渠道
int32 channelId = 3; // 渠道id
int32 compensation = 4; //老玩家服补偿金
}
//玩家信息基础,数据库要用,对应数据库表独立字段
message DBRoleBase {
int64 uid = 1;
string nick = 2 [stringlength=32];
int32 gender = 3;// 性别
string icon = 4 [stringlength=32];
int32 exp = 5;
int32 level = 6;
int32 vipLevel = 7;
int64 chip = 8;
int64 diamond = 9;
int64 lastLoginTime = 10;
int64 createTime = 11;
int64 onlineTime = 12;
int32 vipExp = 13; // vip经验
string lang = 14 [stringlength=16]; //语言
int32 heroExpPool = 15; //统一英雄经验池
int32 roleCreateComplete = 16; // 是否已经创建完角色了。 目前的规则是在序章时,时没有创建角色的
int64 power = 17; //战力
}
message DBRolePayCooldown{
int32 groupID = 1;//CD组id
int64 startTime = 2; //CD开始时间
int64 buyTime = 3; //购买时间
int32 buyCount = 4; //CD里购买次数
}
message DBRolePayItemRecord{
int32 itemId = 1; //gp_30
int32 paySuccessCount = 4; // 充值成功次数
int32 payCountToday = 7; // 今天成功支付次数
int32 versionCode = 8; // 商品有可能复用,加上版本号,变了可以清除
int32 payCountWeek = 9; // 本周成功支付次数
int32 payCountMonth = 10; // 本月成功支付次数
int32 endTime = 12; // 商品可支付时间, 超出时间则商品不可购买
int32 lastUpdateRecordTime = 13; // 上次更新时间
}
message DBRoleDiamondHolderData{
}
// 支付成功等待添加到玩家身上的数据
message DBPaySuccWaitAddRole{
int32 itemID = 1;
string orderId = 2 [stringlength=128]; //游戏里的订单号
bool isPlayerFirstPay = 4; // 是否玩家首次支付
uint32 money = 5;
int32 lastSendDBTime = 6;
int32 dbResFailCount = 7;
string orderId3rd = 8 [stringlength=64]; //第三方平台的订单号
int32 payType = 9; //支付类型, google/iap/hero
int32 isTestPay = 11; // 是否测试支付
int64 payTime3rd = 13; // 第三方通知的交易时间
uint32 amount = 14;
string currency = 15 [stringlength=16];
int32 addItemSuccTime = 16; // 添加物品成功时间
string purchaseToken = 17 [stringlength=128]; // 目前华为支付使用
uint32 amountExchange = 18; // 兑换的金额
uint32 diamondExchange = 19; // 兑换的钻石
bool isReplaceItem = 20; // 是否替换了购买商品
int32 sandbox = 21; // 沙盒支付
}
// 月卡种类
enum VipCardType {
VipCardType_None = 0; // 无
VipCardType_MonthlyCardLimit = 1; // 月卡
VipCardType_MonthlyCardLong = 2; // 终身卡
}
enum Currency {
Currency_None = 0;
Currency_Doller = 1; // 美元
Currency_yen = 2; // 日元
Currency_KRW = 3; //韩元
Currency_CNY = 4; //人名币元
}
// 这是CS通信用的事件, 由于要兼容老的excel表格和代码, 故拆成了两个枚举
enum PayLimitEvent {
PayLimitEvent_None = 0;
PayLimitEvent_PopGift = 1;//弹窗后触发的礼包
PayLimitEvent_ActivityGift = 2;//伴随活动开启的礼包
}
// 月卡
message MonthlyCardData {
int32 cardId = 1;
int32 cardType = 2; // 月卡类型
int32 expireTime = 3; // 过期时间
int64 lastRewardTime = 4; // 上一次奖励时间
bool isTimeOutCard = 5;//是否是已过期的月卡
}
message PaySuccLock {
int32 itemID = 1;
string orderId = 2 [stringlength=128];
string orderId3rd = 3 [stringlength=128];
int64 cltSuccTime = 4;
int64 svrSuccTime = 5;
}
//支付信息
message DBRolePayData {
repeated DBRolePayItemRecord payItemRecord = 1 [repeatedcount=512]; //记录支付Item记录(成功次数>0才是支付成功)+限时+特殊条件
repeated DBPaySuccWaitAddRole paySuccWaitAddRole = 5 [repeatedcount=64];
int32 lastSendDBAddDiamondTime = 6;
int64 totalPayMoney = 7; // 总付费金额, 当地货币
int64 totalPayMoneyUSD = 8; // 总付费金额, 美金
repeated MonthlyCardData monthlyCard = 9 [repeatedcount=16]; // 月卡/周卡
int64 lastMonthlyCardFreeAward = 10;//月卡界面的免费奖励领取时间
repeated FistPaymentGift fistPaymentGift = 11 [repeatedcount = 8];//首充礼包数据
int32 lastVipRewardWeek = 14; // 上一次vip周奖励是第几周
int32 startVipWeeklyRewardTime = 16; // 开始发放vip周奖励的时间
repeated PaySuccLock paySuccLock = 18 [repeatedcount=32]; // 支付订单锁
repeated int32 maxPayMoneyLast7Days = 19 [repeatedcount=8]; // 最近7天每天的最大支付金额
int32 lastUpdateMaxPayMoneyTime = 20; // 最近7天的支付金额的更新时间
int32 lastPaySuccFirstPayItemVersion = 22; // 最近成功支付时的首冲礼包版本号
int64 gmTotalPayMoneyUSD = 23; // GM总付费金额, 美金
int64 todayPayDiamond = 24;//今日充值的钻石数量
}
//--------------------------------------DBPayinfoShowData begin-----------------------------------------
message PayInfoOne{
int32 payType = 1;
int32 itemID = 2;
string icon = 3 [stringlength = 32];
int32 moneyType = 4;
int32 money = 5;
int32 diamond = 6;
int32 vipExp = 7;
int32 firstPayRate = 8; //首次充值奖励倍率,千分比
string packBg = 9 [stringlength = 32]; //背景框
repeated TypeIDValue32 getItem = 10 [repeatedcount = 8];
repeated TypeIDValue32 giveItem = 11 [repeatedcount = 8];
int32 showVipLevel = 12;
string itemName = 13 [stringlength = 32];
string itemDesc = 14 [stringlength = 32];
int32 isShow = 15;
int32 chip = 16;
int32 heroExpPool = 17;
int32 heroId = 18;
int32 vipCardType = 19;
int32 buyCountLimit = 20;
int32 dailyLimit = 21;
int32 weeklyLimit = 22;
int32 monthlyLimit = 23;
int32 timeLimitType = 24;
int32 validTimeSecond = 25;
int32 overtimeFreeItemId = 26;
int32 hideMainlandId = 27;
int32 timeLimitGroupID = 28;
int32 consumeItemId = 29;
int32 consumeItemCount = 30;
int32 discountId = 31;
int32 give = 32;
int32 reductionRate = 33;
int32 vipLevelLimit = 34;
int32 playerLevelLimit = 35;
int32 mainlandIdLimit = 36;
int32 sysFuncId = 37;
string startTime = 38 [stringlength = 32];
string endTime = 39 [stringlength = 32];
}
message TypeIDCount32{
int32 type = 1;
int32 id = 2;
int32 count = 3;
}
//--------------------------------------DBPayinfoShowData end -----------------------------------------
//对应DBIDValue中的id
enum CSRoleStatisticsID {
CSRoleStatisticsID_None = 0;
CSRoleStatisticsID_Beginner_Reward = 1; //引导奖励
CSRoleStatisticsID_Login_Day = 2; //登陆天数
CSRoleStatisticsID_GetGod_Equip = 8; //抽取神器
CSRoleStatisticsID_Decompose_Equip = 12; //分解装备次数
CSRoleStatisticsID_RefreshOwnlandSnatch = 22;
CSRoleStatisticsID_AddPayGold = 23; // 付费钻石获得
CSRoleStatisticsID_PayMoney = 27; //充值
CSRoleStatisticsID_Max_ID = 45; //记得修改最大值,不要多也不要少了
}
//id,value 对
message DBIDValue {
int32 id = 1;
int64 value = 2;
}
//这个结构体加字段记得在后台TickDailyReset函数里加上重置代码,不要忘记!!!
message DBStatWeekly{
int64 lastWeeklyTime = 1; //每周的时间
int64 WinChip = 2; //赢取筹码
int32 shareFBSignAddDiamond = 3;//签到附加钻石
int32 receiveFriendGift = 4; //收到好友礼物的次数
}
message DBStatisticsData {
int64 lastDailyTime = 1; //每日的时间
repeated DBIDValue Daily = 2 [repeatedcount=64]; //每日统计
repeated DBIDValue Total = 3 [repeatedcount=64]; //总的统计
DBStatWeekly Weekly = 4;
}
//
message SnsFriendInfoAccount {
int32 accountType = 1; //
string accountID = 2 [stringlength=256];
string nick = 3 [stringlength=32];
int32 gender = 4;
string icon = 5 [stringlength=32];
int64 uid = 6;
int32 dbQueryResult = 7; //1表示db里查询成功,-1表示失败,0表示未查询
}
message DBFriendHeroOne {
int32 descId = 1;
int32 level = 2;
int32 star = 3;
int64 power = 4;
int32 skin = 5;
}
//好友数据里的自己的数据
message DBFriendSelf {
int64 uid = 1;
string icon = 2 [stringlength=32];
string nick = 3 [stringlength=32];
int32 level = 4;
int64 lastLoginTime = 5; //上次登录时间
int32 vipLevel = 6;
int32 vipExp = 7;
int32 hideMyInfo = 8;//是不是私密
int64 chip = 11;
int64 diamond = 12;
int32 exp = 13;
int32 gender = 15;
string PersonalizedSignature = 16 [stringlength=32];
int32 lostPushTimes = 17; //流失推送次数,这个限制一个角色3次,3次后不再推送
int64 vipCardExpireTime = 18; //最近一次的vip卡的到期时间
int32 autoAccept = 19; //是否自动同意添加好友
int32 refuseAll = 20; //拒绝所有人,不能让其他人添加我为好友
int64 lastLogoutTime = 21; //上次登出时间
int32 todaySelfSendGift = 22; // 今日已送出礼物数量
int32 todaySelfRecvGift = 23; // 今日已领取礼物数量
int32 lastResetGiftDataTime = 24; //上次赠送礼物数据重置的时间
int32 maxPassMainlandId = 25; // 最大通关副本id
repeated int64 blackList = 26 [repeatedcount=128]; //黑名单
repeated int64 todaySendGiftUid = 27 [repeatedcount=32]; //今天已经赠送过的礼物的好友
string realmName = 28 [stringlength=32]; //区服名称
int64 mainlineFightPower = 29; // 主线战斗力
repeated DBFriendHeroOne mainlineHeros = 30 [repeatedcount=8]; // 主线阵容
bool isOnline = 31; // 是否在线
int32 iconFrameId = 33;
int32 realmId = 34;
}
//一个好友数据
message DBFriendOne {
int32 friendType = 1; //0,游戏好友,1,sns好友
int64 uid = 2;
string icon = 3 [stringlength=32];
string nick = 4 [stringlength=32];
int32 level = 5;
int32 gender = 6;
int64 lastLoginTime = 7; // 上次登录时间
int32 vipLevel = 8;
int32 vipExp = 9;
int64 chip = 10;
int32 lastSendGiftTime = 11; // 赠送好友礼物的时间,需要重置
int32 recvGiftNum = 12; // 收到好友礼物数量
bool isOnline = 13; // 是否在线, 方便friendsvr间同步
int32 lastGetGiftTime = 14; // 领取好友礼物的时间
int32 maxPassMainlandId = 15; // 章节ID
int64 mainlineFightPower = 16; // 战斗力
string realmName = 17 [stringlength=32]; //区服名称
int32 lastLogoutTime = 18; // 上次登出时间
int32 iconFrameId = 20;
int32 realmId = 21;
}
//数据库的op类型
enum DBFriendOpType {
DBFriendOpType_None = 0;
DBFriendOpType_Invite = 1; //邀请,这个会保存到op列表里
DBFriendOpType_AgreeAdd = 2; //同意邀请,这个不会保存到op列表,内存里就处理完了
DBFriendOpType_Refuse = 3; //拒绝邀请,这个不会保存到op列表,内存里就处理完了
DBFriendOpType_Delete = 4; //删除这个不会保存到op列表,内存里就处理完了
DBFriendOpType_Add_Blacklist = 5; //添加黑名单这个不会保存到op列表,内存里就处理完了
DBFriendOpType_Del_Blacklist = 6; //删除黑名单这个不会保存到op列表,内存里就处理完了
DBFriendOpType_Max = 7; //最大值
}
//好友数据里的好友列表
message DBFriendList {
repeated DBFriendOne allFriends = 1 [repeatedcount=128];
}
message DBFriendOneOp{
int32 opType = 1;
int32 opSeq = 2; //序列号,唯一,自增
DBFriendOne friend = 3;
}
message DBFriendChatOne{
int64 senderUid = 1;
string senderNick = 2 [stringlength=32]; //昵称
string senderIcon = 3 [stringlength=32]; //头像
int32 senderGender = 4; //性别
int64 sendTime = 5;
string message = 6 [stringlength=256];
int32 chatSeq = 7;
int64 targetUid = 8;
int32 iconFrameId = 9;
}
//一个好友数据
message DBFriendStrangerOne {
int32 playTogetherCount = 1;//一起玩牌次数
int64 lastUpdateTime = 2; //最后更新时间,比如最后一起玩牌时间
DBFriendOne data = 3;
}
//好友操作表
message DBFriendOpData{
int32 lastOpSeq = 1;
repeated DBFriendOneOp opList = 2 [repeatedcount=32];
int32 lastChatSeq = 3;
repeated DBFriendChatOne chatList = 4 [repeatedcount=64];
repeated DBFriendStrangerOne strangerList = 5 [repeatedcount=32]; //陌生人列表,比如一起玩过牌的
}
//邮件操作的校验数据,防止重复领取邮件
message DBRoleMailOp{
int64 getItemMailID = 1;
int64 FacebookLoginFirstMailTime = 2; //Facebook登录第一次发邮件奖励
int64 NewPlayerGiftMailTime = 3; // 新用户奖励邮件时间
}
//以后的新增货币类型都放这把,统一点
message DBOtherCurrency{
int64 commanderLowExp = 1; //指挥官低级经验
int64 commanderMidExp = 2; //指挥官中级经验
int64 commanderHighExp = 3; //指挥官高级经验
int64 freeDrawTimes = 4; //免费抽卡次数
}
//其他信息
message DBRoleOtherData {
uint32 lastVersionUpdateCompensate = 1;//停服补偿最后的版本号
int64 lastLoginDayTime = 4;//上一天登录的时间,计算连续登录使用
int32 hideMyInfo = 11; //设置自己的个人信息为隐藏,不让其他玩家查询
int64 inviteMeUid = 12; //邀请我的玩家的uid,通过fb邀请的,记录这个表示发过奖了
string adid = 13 [stringlength=128]; //google,ios 广告id
string installChannel = 14 [stringlength=32]; //install 渠道
string accountEmail = 16 [stringlength=32]; //如果是sns登录的,则在这里是邮箱
string newNick = 17 [stringlength=32]; //修改过的名字
int32 newGender = 18; //修改过的性别
string newIcon = 19 [stringlength=32]; //修改过的头像
int32 playerInitItemVer = 21; //出生物品版本号
int32 renameTimes = 25; //玩家改名次数
int32 gmLevel = 29;
int64 onlineExpStartTime = 30; //上一个onlinetime总和
int64 onlineExpAllTime = 31; //当前总的时间
string lastDeviceId = 33 [stringlength=64]; // 上次登录设备id
int32 totalLoginDays = 37; // 登录天数
int32 closePayChanel = 45; //是否关闭支付通道
DBOtherCurrency otherCurrency = 46;
}
//一个黑名单数据
message DBBlackListPlayer {
int64 uid = 1;
}
message DBSysData {
//repeated DBBlackListPlayer blackList = 1 [repeatedcount=128]; //黑名单
repeated int32 unlockSys = 2 [repeatedcount = 64];
int32 allChips = 3;
int32 allHeros = 4;
int64 dungeonPower = 5;
int32 plotTask = 6;
int32 noviceGuidance = 7; //新手引导进程
repeated int32 secondNoviceGuidance = 8 [repeatedcount = 128]; //第二引导
int32 allDungeonBattle = 9;
repeated int32 dungeonLayerTimes = 10 [repeatedcount = 16];
int32 dungeonEnegy = 11; //聚能宝箱能量
int32 allCampainBattle = 12;
int32 plotGuide = 13; //剧情引导
int32 iconFrameId = 14; //当前穿戴头像框 待废弃
repeated uint32 iconFrameBitMap = 15 [repeatedcount = 20]; //头像框索引,640个应该够了? 待废弃
repeated uint32 tutorialRewardsBitMap = 16 [repeatedcount = 4]; //教程奖励
}
//额外数据
message DBExtData {
repeated RoleBaseInfo chatBlackList = 1 [repeatedcount=128]; //聊天屏蔽黑名单
int64 chatBlackVer = 2; //聊天屏蔽黑名单版本号
int32 patch = 4;//patch 号
repeated DBJobData job =5 [repeatedcount = 16];
bool isSendCompensation =6;
repeated IDValue32 popCostItemRecord = 7 [repeatedcount = 16];
}
message DBJobData {
int64 Id = 1;
int64 startTime = 2;//结束时间
int64 endTime = 3;//开始时间
int32 type = 4;//类型
int32 tryRet = 5;//重试次数
repeated IDValue64 args = 6 [repeatedcount=128]; //参数
}
enum DropFromType
{
DropFromType_None = 0;
DropFromType_Vip = 1; //vip额外加成
DropFromType_Institute = 2; //研究院额外加成
DropFromType_OpenActivity = 3; //活动开放
DropFromType_BossRecommend = 4; //boss战推荐加成
DropFromType_PassGrade1 = 5; //boss战评级1奖励
DropFromType_PassGrade2 = 6; //boss战评级2奖励
DropFromType_PassGrade3 = 7; //boss战评级3奖励
}
//掉落数据
message DropDataOne
{
TypeIDValueString reward=1;
int32 param = 2;
DropFromType fromType = 3; //掉落来源,特殊掉落要标记
}
enum TaskEXCfg{
TaskEXCfg_Task_status_processing = 0;
TaskEXCfg_Task_status_complete = 1;//完成未领取
TaskEXCfg_Task_status_done = 2;//完成并已领取
}
enum PopConditionType{
PopConditionType_None = 0;
PopConditionType_Item_Reduce_And_Insufficient = 1; //物品减少且不足或者等于y
PopConditionType_Draw_Mount_Quailty = 2; //玩家普通/高级刷新中,第X次抽到品质为Y的坐骑
PopConditionType_Reduce_Item_Not_Enough = 3; //道具X进行消耗时,拥有的数量不足
PopConditionType_PvpOrPveLose = 4; //道具X进行消耗时,拥有的数量不足
PopConditionType_PlayerLevel = 5; //道具X进行消耗时,拥有的数量不足
PopConditionType_Total_Recharge = 6; //道具X进行消耗时,拥有的数量不足
PopConditionType_Size = 7;
}
message DBTaskEXOneNode{
int32 currVal = 1; // 当前值
bool done = 2; // 是否已达到要求
// 0, 没有
// 1, 达到
}
message DBTaskEXOne{
int32 taskId = 1; // 任务编号ID
repeated DBTaskEXOneNode condition = 2 [repeatedcount = 4]; // 任务要求达标的条件列表
int32 pickupTime = 3; // 接取任务的时间
// 预留,用于将来处理有时限型(如日常、活动、按时重置、重复进行型等等)的任务时方便处理
int32 status = 4; // 任务当前的进度状态以及任务是否可交付
// 当 status 的值(默认值为0):
// 0为未提交
// 1是已完成
// 目前只有 0 1两种状态 是否可领取看具体进度
// 预留,为将来处理任务分不同状态步骤进行时方便处理
//repeated DBPositionDir exposInfo = 5 [repeatedcount = 2]; // 根据任务情况不同扩展的可能会用到的位置信息
}
message DBTaskEXData{
repeated DBTaskEXOne taskList = 1 [repeatedcount = 300]; // 当前正在进行中的任务列表
repeated int32 finishTaskList = 2 [repeatedcount = 200]; // 已经完成了的任务ID列表
int32 taskDailyLiveness = 3 ; //日常活跃度
int32 livenessDailyAward = 4; //活跃度奖励领取(按位记录,第一位为1表示第一个奖励已经领取)
int32 taskWeeklyLiveness = 5; //周常活跃度
int32 livenessWeeklyAward = 6; //活跃度奖励领取(按位记录,第一位为1表示第一个奖励已经领取)
int64 nextDailyRefreshTime = 7;
int64 nextWeeklyRefreshTime = 8;
int32 mainlandChapter = 9; //新主线任务完成章节
}
/*
新版任务的数据结构 end
*/
message DBInviteeRoleInfo{
int64 uid = 1;
string nick = 2 [stringlength=32]; //名字
string icon = 3 [stringlength=32]; //头像
}
message DBInviteeFriendData{
int32 inviteeLvupRewardGetCount = 1; //已经领取奖励的数量
repeated DBInviteeRoleInfo inviteeRewardRole = 2 [repeatedcount=32]; //邀请的玩家成功升级后的列表
}
message DBBindAccount{
int32 accountType = 1;
string accountId = 2 [stringlength=256];
string email = 3 [stringlength=32];
string nick = 4 [stringlength=32];
}
message DBBindAccountData{
repeated DBBindAccount accoutList = 1 [repeatedcount=32];
}
//***************MarketShopData begin********************
message OneGridGoods{
int32 goodsId = 1; //物品索引
int32 curBuyTimes = 4; //当前购买这个格子物品的次数
}
//商店数据
message OneShopData{
int32 shopId = 1 ; //市场下的商店ID
repeated OneGridGoods gridGoods = 3 [repeatedcount = 24] ;
int64 nextAutoRefreshTime = 4; //下一次自动刷新时间
int32 handRefreshTimes = 5; //当前手动刷新次数
int64 lastHandRefreshTime = 6;
}
message DBMarketShopData{
repeated OneShopData shopData = 1 [repeatedcount = 20];
}
//***************MarketShopData end ********************
//英雄信息(最新的)(attrTypeValue 改变后,记得修改HeroInfo的attrTypeValue 长度)
message DBHero{
int32 serialNum = 1; // pdl
int32 descId = 2; // pdl
int32 level = 3; // pdl
int32 exp = 5; // pdl
DBPeakLevelData levelData = 4; //巅峰加点
repeated DBEquipment wearEquip = 41 [repeatedcount = 12]; // 装备 pdl
repeated DBGem wearGem = 6 [repeatedcount = 32];
int32 skin = 7;
int32 weapon1 =8;
repeated TypeIDValue32 suits = 9[repeatedcount = 4]; //套装
}
//CS_GAMEMSGID_SYSTEM_UNLOCK_INFO_LOAD_SYN
message CSSystemUnlockInfoLoadSyn{
repeated int32 idList = 1 [repeatedcount = 128]; //已经解锁的系统ID
}
//CS_GAMEMSGID_SYSTEM_UNLOCK_INFO_CHANGE_SYN
message CSSystemUnlockInfoChangeSyn{
repeated int32 idList = 1 [repeatedcount = 128]; //已经解锁的系统ID
}
//CS_GAMEMSGID_PASS_CARD_LOAD_SYN
message CSPassCardLoadSyn{
repeated DBOPassCard freeAwardList = 1 [repeatedcount = 64];//已经领取过的免费奖励
repeated DBOPassCard payAwardList = 2 [repeatedcount = 64];//已经领取过的付费奖励
int32 monthCardIsGet = 3;//月卡是否领取 0未领取,1已领取
int32 allCardIsGet = 4;//终身卡是否领取 0未领取,1已领取
repeated int32 allItem = 5[repeatedcount = 8];//该活动会展示的内容
int32 monthCardLastDay = 6;//月卡剩余天数
}
//CS_GAMEMSGID_PASS_CARD_GET_AWARD_REQ
message CSPassCardGetAwardReq{
int32 cardIndex = 1;
int32 seq = 2;
}
//CS_GAMEMSGID_PASS_CARD_GET_AWARD_RES
message CSPassCardGetAwardRes{
CSErrCode ret = 1;
repeated TypeIDValue32 rewards = 2 [repeatedcount = 16];
}
//CS_GAMEMSGID_HOMEAD_AD_LOAD_SYN
message CSHomeAdLoadSyn{
string adToken = 1[stringlength=64];//ca-app-pub-ad_network/ad_unit
}
//CS_GAMEMSGID_HOMEAD_AD_GIVE_MONEY_SYN
message CSHomeAdGiveMoneySyn{
repeated CSItemChgInfo rewards = 1 [repeatedcount = 16];
int32 advId = 2;
}
//CS_GAMEMSGID_HOMEAD_AD_GET_AWARD_REQ
message CSHomeAdGetAwardReq{
}
//CS_GAMEMSGID_HOMEAD_AD_GET_AWARD_RES
message CSHomeAdGetAwardRes{
}
//CS_GAMEMSGID_HOMEAD_AD_START_SYN
message CSHomeAdStartSyn{
}
//CS_GAMEMSGID_HOMEAD_AD_PASS_REQ
message CSHomeAdPassReq{
int32 type = 1;//1:获取钻石,2增加寻宝次数,3 领地 ,4 加速宝箱 ,5 赛马
}
//CS_GAMEMSGID_HOMEAD_AD_PASS_RES
message CSHomeAdPassRes{
CSErrCode ret = 1;
int32 type = 2;
}
//CS_GAMEMSGID_CARD_GET_DAILY_AWARD_REQ //领取月卡每日奖励
message CSCardGetDailyAwardReq{
int32 cardId = 1;
bool isFree = 2; //当free 为true表示领取每日免费奖励,cardid=0
}
//CS_GAMEMSGID_CARD_GET_DAILY_AWARD_RES //领取月卡每日奖励
message CSCardGetDailyAwardRes{
CSErrCode ret = 1;
}
//CS_GAMEMSGID_MONTHLY_CARD_INFO_SYN //同步月卡数据
message CSMonthlyCardInfoSync{
repeated MonthlyCardData MonthlyCard =1 [repeatedcount = 16];
}
// CS_GAMEMSGID_BATTLE_PASS_AWARD_REQ = 5337;// 领取battlepass 奖励
message CSBattlePassGetAwardReq{
int32 actId = 1;
int32 freeIndex = 2;
int32 payIndex = 3;
int32 supPayIndex = 4;
}
//CS_GAMEMSGID_BATTLE_PASS_AWARD_RES //领取battlepass 奖励
message CSBattlePassGetAwardRes{
CSErrCode ret = 1;
}
// CS_GAMEMSGID_BATTLE_PASS_INFO_SYN = 5339;//
message CSBattlePassInfoSync{
repeated BattlePassData battlePassData = 1 [repeatedcount = 32];//battle pass data
}
//CS_GAMEMSGID_EQUIP_SHOW_CHANGE_REQ
message CSEquipShowChangeReq{
int32 descId = 1; // 幻化id
int32 pos = 2; //部位
}
//CS_GAMEMSGID_EQUIP_SHOW_INFO_SYN
message CSEquipShowInfoSyn{
int32 pos = 1; // 部位
DBEquipSkins skins = 2; // 值
}
//CS_GAMEMSGID_EQUIP_SHOW_CHANGE_RES
message CSEquipShowChangeRes{
CSErrCode ret = 2;
int32 pos = 3; // 部位
int32 descId = 4; // 值
}
//CS_GAMEMSGID_BAG_SYNC
message CSBagSync{
DBPandoraBag bag = 1;
}
//CS_GAMEMSGID_HERO_SYNC
message CSHeroSync{
DBKnight hero = 1;
}
//CS_GAMEMSGID_EQUIP_SYNC
message CSEquipSync{
DBEquipment add = 1;
}
//CS_GAMEMSGID_SKIN_SYNC
message CSSkinSync{
DBSkinData skins = 1 ;
}
//CS_GAMEMSGID_GEM_SYNC
message CSGemSync{
DBGem add = 1 ;
}
//CS_GAMEMSGID_EQUIPLIST_SYNC
message CSEquipListSync{
repeated DBEquipment equipList = 2 [repeatedcount = 256]; //装备背包
}
//CS_GAMEMSGID_EQUIPDEPOT_SYNC
message CSEquipDepotSync{
repeated DBEquipment equipDepot = 2 [repeatedcount = 400]; //装备背包
int32 euqipDepotCount = 4; //仓库已经解锁个数,最多4个
}
//CS_GAMEMSGID_ITEMLIST_SYNC
message CSItemListSync{
repeated DBBagItem itemList = 1 [repeatedcount = 512];//暂时定这么大
}
//CS_GAMEMSGID_GEMLIST_SYNC
message CSGemListSync{
repeated DBGem gemList = 6 [repeatedcount = 1300];//暂时定这么大
DBGem composeTempOld = 7;//合成临时的
DBGem composeTempNew = 8;//合成临时的
}
//CS_GAMEMSGID_GEM_WEAR = 5021;
message CSGemWear{
int32 gemId = 1;
int32 opType = 2;//1穿戴,2替换,3卸下
int32 toGemId = 3; //替换时有用
int32 toPos = 4;//万能宝石有用
}
//CS_GAMEMSGID_GEM_WEAR_RES = 5022;
message CSGemWearRes{
int32 gemId = 1;
CSErrCode ret = 2;
int32 opType = 3;//1穿戴,2替换,3卸下
int32 toGemId = 4; //替换时有用
int32 toPos = 5;//万能宝石有用
}
message GemComposeUnit{//每一个合成组,5个相同品质部位的放一起
repeated int32 confId = 1 [repeatedcount = 6];
repeated int32 count = 2 [repeatedcount = 6];
}
//CS_GAMEMSGID_GEM_COMPOSE = 5023;
message CSGemCompose{ //一键合成
repeated GemComposeUnit costs = 2[repeatedcount = 300];
}
//CS_GAMEMSGID_GEM_COMPOSE_RES = 5024;
message CSGemComposeRes{
CSErrCode ret = 2;
repeated GemComposeUnit costs = 1[repeatedcount = 300];
}
//CS_GAMEMSGID_GEM_COMPOSE_ONE = 5025;
message CSGemComposeOne{ //手动合成
int32 confId = 1 ; //主id
GemComposeUnit costs = 2;//材料列表,不包含主
}
//CS_GAMEMSGID_GEM_COMPOSE_ONE_RES = 5026;
message CSGemComposeOneRes{
int32 confId = 1 ; //主id
CSErrCode ret = 2;
DBGem newGem = 3;
}
//CS_GAMEMSGID_GEM_COMPOSE_ONE_SAVE = 5027;
message CSGemComposeOneSave{ //手动合成保存
int32 opType = 1;//1是取消,2是用新的
}
//CS_GAMEMSGID_GEM_COMPOSE_ONE_SAVE_RES = 5028;
message CSGemComposeOneSaveRes{
CSErrCode ret = 2;
int32 opType = 1;
}
//CS_GAMEMSGID_GEM_LOCK = 5029;
message CSGemLock{ //手动合成保存
int32 opType = 1;//1是lock, 2 是unlock
int32 gemId = 2;
}
//CS_GAMEMSGID_GEM_LOCK_RES = 5030;
message CSGemLockRes{
CSErrCode ret = 2;
int32 opType = 1;//1是lock, 2 是unlock
int32 gemId = 3;
DBGem geam = 4;
}
//CS_GAMEMSGID_GEM_SETNEWGET = 5031;
message CSGemSetNewGet{ //
int32 gemId = 3;
}
//CS_GAMEMSGID_GEM_SETNEWGET_RES = 5032;
message CSGemSetNewGetRes{
int32 gemId = 3;
}
//CS_GAMEMSGID_GEM_CHANGE_SYNC = 5033;
message CSGemChangeSync{
repeated IDValue32 change = 3[repeatedcount = 1300];
}
//CS_GAMEMSGID_BEGINNER_GUIDE_CHANGE_REQ
message CSBeginnerGuideChangeReq{
int32 id = 1;
}
//CS_GAMEMSGID_BEGINNER_GUIDE_CHANGE_RES
message CSBeginnerGuideChangeRes{
repeated int32 beginnerGuide = 1 [repeatedcount = 64]; //新手引导
CSErrCode ret = 2;
}
//CS_GAMEMSGID_BEGINNER_GUIDE_AWARD_REQ
message CSBeginnerGuideAwardReq{
int32 type = 1;
int32 id = 2;
}
//CS_GAMEMSGID_BEGINNER_GUIDE_AWARD_RES
message CSBeginnerGuideAwardRes{
CSErrCode ret = 1;
int32 type = 2;
}
//通行证同步数据结构
message DBOPassCard{
int32 cardIndex =1;//通行证类型
int32 seq = 2;//通行证奖励挡位
}
//弹窗礼包推送结构
message DBPopupGiftInfo{
int32 type = 1;//礼包类型
repeated int32 idList = 2[repeatedcount = 8];//礼包ID列表
int64 time = 3;//礼包结束时间戳
int32 popNum = 4; //弹出次数
}
//开服活动商城结构
message DBOSActShop{
int32 randomShopNeedItemType = 1;//开服活动商城刷新所需物品ID
int32 randomShopNeedItemValue = 2;//开服活动商城刷新所需物品ID
repeated DBOSActShopOne itemInfo = 3 [repeatedcount = 6];
}
message DBOSActShopOne{
int32 id = 1;
int32 count =2;
int32 maxBuyCount = 3;
int32 nowBuyCount = 4;
int32 index = 5;
}
//装备位置枚举
enum EquipmentPos{
EquipmentPos_None = 0;
EquipmentPos_Helmet = 1; // 头盔
EquipmentPos_Armor = 2; // 护甲
EquipmentPos_Leggings = 3; // 护腿
EquipmentPos_Gloves = 4; // 手套
EquipmentPos_Boots = 5; // 鞋子
EquipmentPos_NeckLace = 6; // 项链
EquipmentPos_Bracelet = 7; // 手镯
EquipmentPos_Ring = 8; // 戒指
EquipmentPos_LeftGun = 9; // 主武器
EquipmentPos_RightGun = 10; // 副武器
EquipmentPos_Max = 11;
}
//单一装备信息 加字段的时候通知客户端需要把对应字段传到ILRuntime
//删除后只保留四个有用字段
message DBEquipment{
int32 serialNum = 1; //装备唯一id
int32 descId = 2 ; // pdl
int32 level = 3; // pdl
repeated PropValue baseProp = 4 [repeatedcount = 2];
repeated PropValue addProp = 5 [repeatedcount = 4]; //附加属性 pdl
int32 score = 6; //评分
int32 element = 8 ;
bool lock = 9; //是否锁定
int32 depotId = 10; //仓库ID
int32 quality = 20; // 品质 pdl
int32 pos = 21; // 部位 客户端传入
bool newGet = 22; //新获得
}
message DBExEquipment{
int32 serialNum = 1;
int32 descId = 2;
int32 mainPropIndex = 3;
int32 count = 4;
}
message DBGem{
int32 confId = 1;
repeated ID32Value64 baseProp = 2 [repeatedcount = 8];
int32 gemType = 3;
int32 pos = 4;
int32 quality = 5;
int32 talengId = 6 ;
int32 count = 7;
bool newGet = 8;
bool lock = 9;
int32 effIdx = 10;
int32 toPos = 11;//万能宝石有用
}
//---------------------------------------------翅膀 start---------------------------------------------
message DbWingData{
DbWing wing = 1;
repeated DbWingsSkin wingSkinList = 2 [repeatedcount = 64];
}
message DbWing{
int32 descId = 1;
int32 levelId = 2;
int32 rankId = 3;
int32 starId = 4;
int32 wearId = 5;//穿戴的星级id
int32 skinId = 7; //穿戴的皮肤id
int32 refitId = 8; //穿戴的皮肤所对应的等级id
}
message DbWingsSkin{
int32 descId = 1;
int32 refitId = 2;
int32 serialNum = 3;
bool newGet = 4;
}
//一下是协议
//CS_GAMEMSGID_ON_CHANGE_STAR_WEAR_REQ = 5200;
message OnChangeStarWearReq{//穿戴星级
int32 starId = 1;
}
// CS_GAMEMSGID_ON_CHANGE_STAR_WEAR_RES = 5201;
message OnChangeStarWearRes{
CSErrCode ret = 1;
}
// CS_GAMEMSGID_ON_CHANGE_WING_SKIN_REQ = 5202;
message OnChangeWingSkinReq{//穿戴翅膀皮肤
int32 wingId = 1; //翅膀皮肤id
int32 refitId = 2; //翅膀皮肤等级id
}
// CS_GAMEMSGID_ON_CHANGE_WING_SKIN_RES = 5203;
message OnChangeWingSkinRes{
CSErrCode ret = 1;
}
////1是升级,2是升阶,3是升星
enum WingOpType{
WingOpType_None = 0;
WingOpType_UpgradeLevel = 1;
WingOpType_UpgradeRank = 2;
WingOpType_UpgradeStar = 3;
}
// CS_GAMEMSGID_ON_UPGRADE_MAIN_WING_REQ = 5204;
message OnUpgradeMainWingReq{
WingOpType opType = 1;
bool toMax = 2; //是否到最大 等级、阶级、星级(暂实现等级)
}
// CS_GAMEMSGID_ON_UPGRADE_MAIN_WING_RES = 5205;
message OnUpgradeMainWingRes{
CSErrCode ret = 1;
WingOpType opType = 2;
}
//CS_GAMEMSGID_ON_UPGRADE_WING_SKIN_REQ = 5206;
message OnUpgradeWingSkinReq{ //升级翅膀皮肤
int32 wingId = 1;
}
// CS_GAMEMSGID_ON_UPGRADE_WING_SKIN_RES = 5207;
message OnUpgradeWingSkinRes{
CSErrCode ret = 1;
int32 wingId = 2;
}
// CS_GAMEMSGID_ON_SYNC_WING_DATA = 5208;
message SyncWingsData{//同步数据
DbWingData wingData = 1;
}
//CS_GAMEMSGID_ON_MARK_WING_NEW_GET_REQ = 5209;
message OnMarkWingNewGetReq{
int32 descId = 1;
}
//CS_GAMEMSGID_ON_MARK_WING_NEW_GET_RES = 5210;
message OnMarkWingNewGetRes{
CSErrCode ret = 1;
}
//---------------------------------------------翅膀 end---------------------------------------------
// --------------------------------------GameServerRank start--------------------------------------------------------
//排行榜刷新类型
enum RankFlushType{
RankFlushType_None = 0;
RankFlushType_Seconds = 1;
RankFlushType_Daily = 2;
RankFlushType_Weekly = 3;
}
//排行榜单个数据
message RankOneData{
int32 rankID = 1; //排行榜Id
int64 rankScore = 2; //分数
int64 updateTime = 3; //更新时间
int64 successScore = 4; //成功上榜分数
int32 param1 = 5;
}
//角色自身排行版数据
message DBRoleRankData{
repeated RankOneData list = 1 [repeatedcount = 128]; //自身排行榜数据
repeated int32 haveAwardRankList = 2 [repeatedcount = 256]; //已经领过奖的排行榜
}
// CS_GAMEMSGID_EXCHANGE_CODE_TAKE_REQ = 4171; //兑换码兑换
message CSExchangeCodeTakeReq{
string code = 1 [stringlength=64]; //兑换码
}
// CS_GAMEMSGID_EXCHANGE_CODE_TAKE_RES = 4172;//兑换码兑换
message CSExchangeCodeTakeRes{
int32 ret = 1;
repeated DropDataOne rewardList = 2[repeatedcount=16]; //奖励
}
//---------------------------------ExchangeCode start---------------------------------------\
message DBExchangeCodeData{
repeated uint32 bitMap = 1 [repeatedcount = 16];//领取状态map 这个长度就不要改了,改了要写代码兼容数据
repeated uint32 codeMap = 2 [repeatedcount = 100]; //codeid超过512的就存这吧
}
//---------------------------------ExchangeCode end---------------------------------------\
message DBPreRegistrationData{
uint64 rewardStateBitMap = 1; //领取状态
}
message DBStrategeRewardData {
repeated IDValue64 oneStratege = 1 [repeatedcount = 32];//策略id 按位保存奖励领取信息
}
message DBIconFrameDataOne{
int32 id = 1; //头像框id
int64 getTime = 2; //获取时间
}
message DBIconFrameData{
int32 iconFrameId = 1; //当前穿戴头像框
repeated DBIconFrameDataOne list = 2 [repeatedcount = 128]; //头像框
}
message DBModuleAchieveDataOne{
int32 moduleAchieveId = 1; //模块成就id
int32 hadAwardStep = 2; //已领奖步骤
int64 nowValue = 3; //当前值
}
message DBIconData{
repeated int32 iconUnlockBits = 1 [repeatedcount = 8]; //头像框
repeated int32 unlocked = 2 [repeatedcount = 128];//头像框
}
//体力相关
message PowerPointData{
int32 power = 1;
int32 powerMax = 2;
int64 lastUpdateTime = 3;
int32 buyTimes = 4;
int64 lastRefreshTime = 5;
int32 mopTimes = 6;//当日已扫荡次数
int32 extMopTimes = 7;//额外扫荡次数
int32 costPower = 8;//累计消耗体力
int64 lastGainTime = 9;//上次获得体力时间
}
// CS_GAMEMSGID_MOP_UP_REQ = 1075; // 扫荡请求
message MopUpReq{
}
// CS_GAMEMSGID_MOP_UP_RES = 1076; // 扫荡返回
message MopUpRes{
int32 ret = 1;
repeated CSItemChgInfo rewards = 5 [repeatedcount = 64]; //具体得到的内容
}
// CS_GAMEMSGID_GAIN_POWER_REQ = 1077; // 领取体力数据
message GainPowerReq{
bool all = 1;
}
// CS_GAMEMSGID_GAIN_POWER_RES = 1078; // 领取体力数据
message GainPowerRes{
int32 ret = 1;
}
// CS_GAMEMSGID_BUY_POWER_REQ = 1071; // 购买体力数据
message BuyPowerReq{
}
// CS_GAMEMSGID_BUY_POWER_RES = 1072; // 购买体力数据
message BuyPowerRes{
int32 ret = 1;
int32 num = 2;
}
//CS_GAMEMSGID_SYNC_POWER_INFO = 1068; // 同步体力数据
message SyncPowerPointDataRes{
PowerPointData powerPointData = 1;
}
//玩家信息二进制,数据库要用
message DBRoleData {
int32 loginCount = 1; //登录次数
DBRolePayData payData = 2; //支付数据
DBStatisticsData statData = 3; //统计数据,任务,成就可使用
DBRoleMailOp mailOp = 4; //邮件操作的校验数据,防止重复领取邮件
DBRoleOtherData otherData = 5; //其他数据
DBBindAccountData bindAccountData = 6; //绑定的帐号
DBMarketShopData marketShopData = 7; //市场商店数据
DBTaskEXData TaskEXData = 8;
DBRoleRankData rankData = 9; //排行榜数据
int32 dataVersion = 10; //roledata 数据的版本号 用于更新时的数据更改
DBExchangeCodeData exchangeCodeData = 11; //兑换码数据
DBIconFrameData iconFrameData = 12;
int64 OssMaxPlayerDataId = 13; // oss 玩家操作最大Id
DbFreeRewardData freeRewardData = 14; //免费奖励
DBKnight knight = 15; // 骑士 pdl
DBPandoraBag pandoraBag = 16; // 背包 pdl
DBSysUnlockData sysUnlockData = 17;//已解锁的系统息
repeated DBActInfo activityInfo = 18 [repeatedcount=32];//活动相关信息
DbActExtraInfoData actExtraInfo = 19; //活动额外信息,和活动相关得数据都存放在这个结构
DBIconData iconData = 20; // 头像
DBHomeAd homeAd = 21;//广告
repeated int32 beginnerGuide = 22 [repeatedcount = 64]; //新手引导
repeated DBPopupGift popupGift = 23 [repeatedcount =16];//弹窗广告
int64 bornTime = 24;//角色创建时间
DbBurtyingPoint burtyingPoint = 25;
DBExtData extData = 26; //额外数据
PopPackageData popPackageData = 28;//弹窗礼包
DBSkinData skin = 29; //时装
ActRankData actRankData = 30;// 活动排行榜数据
BdcData bdc = 31; //bdc信息
repeated DBEquipment payEquipment = 32 [repeatedcount = 8]; // 充值定制装备
PowerPointData powerPointData = 33; //体力相关
DbTalentData talent= 34;
ChapterData chapterData = 35;
ChapterDataRecord battleRecord = 36;
bool isInBattle = 37;//是否再战斗中
DBWXFriends wxFriends = 38;
repeated RecruitData recruitData = 39 [repeatedcount = 4]; //抽卡数据
repeated IDValue64 gmProp =40 [repeatedcount = 8];
DbWingData wingData = 41;//翅膀
DBCBattle cbdata = 42;//boss连战
DBPreset preset = 43; //预设
}
message DBCBattle{//boss连战
int64 lastFreshTickTime = 1;
int32 maxLayer = 2;
int32 lastLayer = 3;
repeated int32 getLayerReward = 4 [repeatedcount = 1024]; //已经领取阶段奖励
repeated TypeIDValue32 nowReward = 5 [repeatedcount = 128];//当前挑战的累计奖励
int32 nowLayer = 6; //当前层
int64 nowStartTime = 7;//当前开始时间
int32 nowScore = 8;
int32 weekScore = 9;
int64 lastWeekScoreRst = 10;
int32 nowStageId = 12;
int32 rednamestageId = 11;
int32 nowBoosC = 13;//boss数量
int32 nowRedC = 14;//红名数量
int32 beginLayer = 15;
int32 nowRedCTotal = 16;//红名遇见数量
}
message DBWXFriendOne{
string account = 1 [stringlength=32];
int64 uid = 2;
int32 realmId = 3;
DBRankPlayerInfo rankInfo = 4;
int64 lasySyncTime = 5;
}
message DBWXFriends{
repeated DBWXFriendOne friends = 1 [repeatedcount = 1024];
int64 lasySyncTime = 2;
}
message DBSkinOne{
int32 skinId = 1;
int64 unlockTime = 2;
bool newGet = 3;
}
message DBSkinData{
repeated DBSkinOne skins = 1 [repeatedcount = 256];
int32 nowSkin = 2; //当前时装
repeated TypeIDValueString benifits = 3 [repeatedcount = 8];
}
//-----------------------------------------------------------主线章节 start-----
//章节外面数据
message ChapterData{
int32 chapterId = 1; //当前章节id
int32 battleId = 2; //当前章节进度
RepeatedRecord perfectIds = 3;//完美通关列表
RepeatedRecord effectiveStage =4; //速通波次记录
int32 lastChapterId = 5;//
int32 lastBattleId = 6;
RewardBattleData rewardBattleData = 7; //奖励关卡数据
RepeatedRecord effectiveRewardRecord = 8; //速通波次手动领取记录
bool canJoinBattle = 9; //是否可以进入战斗
RepeatedRecord perfectRewardRecord = 10; //完美通关手动领取记录
}
message RepeatedRecord{
repeated RepeatedRecordOne records = 1 [repeatedcount = 2];
}
message RepeatedRecordOne{
repeated int32 record = 1 [repeatedcount = 32];
}
message RewardBattleData{
int32 battleId = 1;//关卡ID
int64 loseTime = 2;//失效时间
int32 level=3;//触发时玩家等级
}
//章节战斗记录
message ChapterDataRecord{
ChapterBattleData battleData =1;
int64 beginTime = 2;//进入战斗时间
int64 battleBeginTime = 3;//战斗开始计时时间
int32 battleTimeDuration = 4;//当前战斗真正耗时
int32 monsterStageId = 5;//当前激活得怪物Id
int64 monsterActiveTime = 6;//当前这波怪物激活时间
int64 monsterBeginTime = 7;//当前这波怪物战斗耗时计时开始
int32 monsterTimeDuration = 8;//当前这波怪物战斗耗时
repeated KillMonsterInfo killedMonsters = 9 [repeatedcount = 16];//已击杀得怪物和数量
repeated TypeIDValue32 dropReward = 10[repeatedcount = 256];
int32 resurrectionNum = 11;//复活次数
repeated MonsterStage stageInfo = 12 [repeatedcount =16];//刷怪波次信息
repeated IDValue32 altarInfo = 13 [repeatedcount = 8];//祭坛信息
repeated IDValue64 PropVal = 14 [repeatedcount = 512];//客户端属性
}
//关卡数据
message ChapterBattleData{
int32 battleId = 1;//章节id
BattleStatus BattleStatus = 2 ;//战斗状态
int32 ReviveNum = 3;//当前局内复活次数
}
enum BattleStatus{
BattleStatus_NONE = 0;//正常战斗中
BattleStatus_SUSPEND = 1;//暂停
BattleStatus_DEFEAT = 2;//失败(等待复活)
BattleStatus_WIN = 3;//战斗结束
}
message KillMonsterInfo{
int32 stageId = 1;//id
repeated IDValue32 monsterInfo = 7 [repeatedcount = 16];//已怪物信息
bool effective = 3; //是否速通
}
//怪物波次信息
message MonsterStage{
int32 stageId = 1;//id
int32 allNum = 2;
repeated IDValue32 monsterInfo = 3 [repeatedcount = 16];//已怪物信息
}
enum ChapterOption{
ChapterOption_None = 0;
ChapterOption_Active_Monster = 1;//激活一组怪物
ChapterOption_Suspend_Battle = 2;//暂停
ChapterOption_Continue_Battle = 3;//继续战斗
ChapterOption_Defeat_Battle = 4;//失败
ChapterOption_Resurrection_Battle = 5;//复活
ChapterOption_End_Battle = 6;//复活
}
//--------- 一下是协议---------------
//CS_GAMEMSGID_BATTLE_BEGIN_REQ = 1800; // 开始战斗
message OnBattleBeginReq{//开始
int32 chapterId = 1;
int32 battleId = 2;
bool isGm = 3;
}
//CS_GAMEMSGID_BATTLE_BEGIN_RES = 1801;
message OnBattleBeginRes{
int32 ret = 1;
ChapterBattleData battleData = 2;
}
// CS_GAMEMSGID_BATTLE_OPTION_REQ = 1802; // 战斗中的操作
message OnBattleOptionReq{//战斗过程中的一下操作
ChapterOption option = 1; //1 激活下一波次,2 暂停,3 继续,4 失败等待复活,5复活,6结束
}
// CS_GAMEMSGID_ON_BATTLE_PUSH_PROP_DATA_REQ = 1815;
message OnBattlePushClientPropReq{
repeated IDValue64 PropVal = 1 [repeatedcount = 512];//客户端属性
}
// CS_GAMEMSGID_ON_BATTLE_PUSH_PROP_DATA_RES = 1816;
message OnBattlePushClientPropRes{
int32 ret = 1;
}
// CS_GAMEMSGID_BATTLE_OPTION_RES = 1803;
message OnBattleOptionRes{
int32 ret = 1;
ChapterOption option = 2;
ChapterBattleData battleData = 3;
}
// CS_GAMEMSGID_KILLED_MONSTER_REQ = 1804; // 战斗中的奖励
message OnKilledMonsterReq{//击杀怪物获取奖励
int32 stageId = 1;
int32 seq = 2;//客户端专用
int32 monsterId = 3;
int32 msgSeq = 4;
}
// CS_GAMEMSGID_KILLED_MONSTER_RES = 1805;
message OnKilledMonsterRes{
int32 ret = 1;
MonsterDrop dropInfo = 2;
int32 msgSeq = 3;
}
message MonsterDrop{
int32 seq = 1;
repeated TypeIDValue32 rewards = 3 [repeatedcount = 64];
}
// CS_GAMEMSGID_ON_SYNC_EXT_DROP_REWARD_DATA = 1813;
message SyncExtDropRewardData{
repeated TypeIDValue32 rewards = 1 [repeatedcount = 64];
}
// CS_GAMEMSGID_ON_PICKUP_MONSTER_REWARD_REQ = 1809; // 章节战斗捡奖励
message OnPickupMonsterRewardReq{
int32 type = 2;
int32 id = 3;
}
// CS_GAMEMSGID_ON_PICKUP_MONSTER_REWARD_RES = 1810;
message OnPickupMonsterRewardRes{
int32 ret = 1 ;
}
// CS_GAMEMSGID_BATTLE_ACTIVE_ALTAR_REQ = 1806; // 激活祭坛
message OnActiveAltarReq{ //激活祭坛
int32 altarId=1;
}
// CS_GAMEMSGID_BATTLE_ACTIVE_ALTAR_RES = 1807;
message OnActiveAltarRes{
int32 ret = 1;
}
// CS_GAMEMSGID_BATTLE_SYNC_DATA = 1808;
message SyncChapterData{//同步信息
ChapterData chapterData = 1;
ChapterBattleData chapterBattleData = 2;
}
// CS_GAMEMSGID_ONTICK_BATTLE_ENTITY_REQ = 1811;
message OnTickBattleEntityReq{ //刷怪
int32 type = 1; //0 怪,1:祭坛
int32 seq = 2;
int32 entityId = 3;
int32 msgSeq = 4;
}
// CS_GAMEMSGID_ONTICK_BATTLE_ENTITY_RES = 1812;
message OnTickBattleEntityRes{
int32 ret = 1;
int32 seq = 2;
int32 msgSeq = 3;
}
//CS_GAMEMSGID_ON_SYNC_CHAPTER_BATTLE_WIN = 1814;
message OnChapterBattleWinSync{
}
//CS_GAMEMSGID_ON_GAIN_BATTLE_REWARD_REQ = 1818;
message OnGainBattleRewardReq{
int32 stageId = 1;
}
//CS_GAMEMSGID_ON_GAIN_BATTLE_REWARD_RES = 1819;
message OnGainBattleRewardRes{
CSErrCode ret = 1;
int32 stageId = 2;
}
//CS_GAMEMSGID_ON_GAIN_ALL_BATTLE_REWARD_REQ = 1819;
message OnGainAllBattleRewardReq{
int32 chapterId = 1;
}
//CS_GAMEMSGID_ON_GAIN_ALL_BATTLE_REWARD_RES = 1820;
message OnGainAllBattleRewardRes{
CSErrCode ret = 1;
int32 chapterId = 2;
}
//CS_GAMEMSGID_ON_BATTLE_DEFEAT_REQ = 1821;
message OnBattleDefeatReq{
int32 defType = 1;
int32 battleId = 2;
}
// CS_GAMEMSGID_ON_BATTLE_DEFEAT_RES = 1822;
message OnBattleDefeatRes{
CSErrCode ret = 1;
int32 defType = 2;
int32 battleId = 3;
}
//---------------------------------------------主线章节 end-----------
message DBFreeOneData{
repeated int32 freeIdList = 1 [repeatedcount = 32];//已经领取的id
int64 lastUpdateTime = 2;//上次更新时间
}
message DbFreeRewardData{
DBFreeOneData daily = 1;
//后续扩展
}
// CS_GAMEMSGID_FREE_REWARD_REQ = 1170;
message CSFreeRewardReq{
int32 freeId = 1;
int32 type = 2;//0 每日,1 其他
}
// CS_GAMEMSGID_FREE_REWARD_RES = 1171;
message CSFreeRewardRes{
CSErrCode ret = 1;
int32 freeId = 2;
}
// CS_GAMEMSGID_FREE_REWARD_SYNC = 1172;
message CSFreeDataSync{
DbFreeRewardData data = 1;
}
message DBPeakLevelData{
int32 freePoint = 1; //剩余加点
repeated IDValue32 addPoint = 2 [repeatedcount = 16]; //属性的加点数量
}
//----------------------------------天赋 start------------------------------
message DbTalentData {
DbTalentPageData talentPage = 1;//普通天赋
DbTalentPageData peakData = 2;//巅峰天赋
}
message DbTalentPageData{
int32 point = 1;
int32 pageIndex = 2;//剩余加点
bool isActive = 3;
repeated IDValue32 items= 4 [repeatedcount = 32]; //属性的加点数量
}
//点天赋(升级、降低), (激活,切换,reset)
// CS_GAMEMSGID_TALENT_OPTIONS_REQ = 1114;
message CSTalentOptionsReq{
int32 option = 1;//操作: 1激活。2切换,3 重置
int32 pageIndex = 2;//天赋页
}
// CS_GAMEMSGID_TALENT_OPTIONS_RES = 1115;
message CSTalentOptionsRes{
CSErrCode ret = 1;
int32 option = 2;
int32 pageIndex = 4;//天赋页
DbTalentPageData data = 5;
}
// CS_GAMEMSGID_TALENT_ACTIVE_REQ = 1112; //
message CSTalentActiveReq{
int32 talentId = 1;
bool backup = 2;//true 减少,false 增加
int32 pageIndex = 3;//天赋页
}
// CS_GAMEMSGID_TALENT_ACTIVE_RES = 1113;
message CSTalentActiveRes{
CSErrCode ret = 1;
DbTalentPageData data = 2;
int32 pageIndex = 3;//天赋页
}
// CS_GAMEMSGID_TALENT_DATA_SYNC = 1118;
message CSTalentDataSync{
DbTalentData talent = 2; //天赋
}
//-----------------------------------天赋 end--------------------------------
message RewardItem{
int32 type = 1 ;
string code = 2 [stringlength=32];
int32 amount = 3;
int32 repeat = 4;
}
message RewardWeightItem{
int32 weight = 2;
repeated RewardItem list = 3 [repeatedcount = 8];
}
message RewardArrayItem{
string code = 1 [stringlength=32];
repeated RewardWeightItem items = 2 [repeatedcount = 32];
int32 nowIdx = 3;
int32 count = 4;
}
message RewardTimesItem{
string code = 1 [stringlength=32];
int32 times = 2;
}
message DBRoleRewardData{
repeated RewardArrayItem arrayItems = 1 [repeatedcount = 500];
repeated RewardTimesItem timesItems = 2 [repeatedcount = 500];
repeated RewardArrayItem groupArrayItems = 3 [repeatedcount = 500];
}
message TreasureActData{
int32 actId= 1; //活动ID
int32 type=2; //活动类型
int32 procNum= 3; //轮次
int32 conductionNum= 4;//当前活动计数点数
repeated int32 awardIds= 5 [repeatedcount = 10];//已经领取奖励的id
bool isSendAward =6;//是否发送邮件
int64 actEndTime=7;//活动结束时间
}
message BdcData{
string bdc_device_id = 1 [stringlength=64];
string deviceid_type = 2 [stringlength=64];
string device_key = 3 [stringlength=64];
string device_model = 4 [stringlength=64];
string ime = 5 [stringlength=64];
string gaid = 6 [stringlength=64];
string idfa = 7 [stringlength=64];
string idfv = 8 [stringlength=64];
string android_id = 9 [stringlength=64];
string oaid = 10 [stringlength=64];
string sdk_version = 11 [stringlength=64];
string bdc_client_os = 12 [stringlength=64];
string old_device_id = 13 [stringlength=64];
}
message DBEquipSkins{
repeated int32 skinId = 1 [repeatedcount = 512];
}
//活动排行榜数据
message ActRankData{
repeated IDValue64 updateTime = 1 [repeatedcount = 10]; //跟新时间
}
//记录一些给前端推送埋点数据
message DbBurtyingPoint
{
int32 userloginCount =1;//登录天数
int64 lsatLoginTime = 2;//上次登录时间
}
//首页广告结构
message DBHomeAd{
int32 todayTotalGetCount =1;//今天一共出现几次广告
int32 nextTime = 2;//下次广告出现的时间
int32 advId = 3;//当前正在观看的广告奖励配置Id
string advToken = 4 [stringlength=64];
repeated DBADInfo infos = 5 [repeatedcount =16];//新增类型,暂时扩展到16
}
//弹窗广告结构
message DBPopupGift{
int32 type = 1;//类别
int32 conditionType = 2;//升级条件
repeated int32 conditionValue = 3 [repeatedcount =4];//升级计数
int32 specialIndex = 4;//特殊礼包的index
repeated int32 giftList = 5 [repeatedcount =16];//所有礼包,因为要涉及到升档降档,所以要提前记录
int32 index = 6;//当前礼包的indx
int32 showCount = 7;//该礼包出现次数,超过两次出现但是没买就要降档
int32 time = 8;//周期开始的时间,0表示未进入周期
int32 allValue = 9;//总计数
int32 endShowTime = 10;//礼包展示剩余时间
int32 coustTime = 11;//礼包持续时间,需要提前记录
}
message PopPackageData{
int64 refreshTime = 1;
repeated PopPackageDataOne popList = 2 [repeatedcount = 20];
}
message PopPackageDataOne{
int32 popupId = 1; //弹出id
repeated int32 payDiamondId = 2 [repeatedcount = 8]; //礼包id
int32 popNUm = 3;//弹出次数
int64 endTime = 4;//剩余时间
}
// CS_GAMEMSGID_PUSH_POP_PACKAGE = 5108; //推送
message PushPopPackage{
PopPackageDataOne popOne = 1;
}
// CS_GAMEMSGID_SYNC_POP_PACKAGE = 5109; //同步弹框礼包信息
message SyncPopPackage{
repeated PopPackageDataOne popList = 1 [repeatedcount = 20];
}
message FistPaymentGift{
int32 itemId = 1;
int64 ctime = 2;
repeated int32 record = 3[repeatedcount = 4];
int32 reLoginNum = 4;
int64 updateTime = 5;
}
// CS_GAMEMSGID_FIST_PAYMENT_AWARD_REQ = 5105; //首充奖励
message CSGatFistPaymentAwardReq{
int32 itemId = 1;
}
// CS_GAMEMSGID_FIST_PAYMENT_AWARD_RES = 5106;
message CSGatFistPaymentAwardRes{
int32 ret = 1;
}
// CS_GAMEMSGID_FIST_PAYMENT_INFO_SYNC = 5107; //同步首充数据
message CSFistPaymentInfoSync{
repeated FistPaymentGift fistPaymentGift = 1 [repeatedcount = 8];//首充礼包数据
}
//新活动信息
message DBActInfo
{
int32 actID = 1;//活动ID
int32 state = 2;//活动的状态
int64 openTime = 3;//活动开启的时间
int64 endTime =4;//活动结束时间
int64 refreshTime = 5;//刷新时间
int64 freeTime = 6;//免费时间
}
//活动拓展数据
message DbActExtraInfoData{
repeated BattlePassData battlePassData = 1 [repeatedcount = 32];//battle pass data
repeated TreasureActData treasureActData = 2 [repeatedcount = 4]; //宝藏数据
repeated SignActData signActData = 3 [repeatedcount =2];//签到可能存在7日或者月
repeated HandBookData handBookData = 4 [repeatedcount =4];//手册活动数据
repeated QuestionnaireData questionData = 5 [repeatedcount =4];//问卷获得给你数据
}
// CS_GAMEMSGID_GET_ACTIVITY_INFO_REQ = 5098; //获取活动信息
message CSGetActInfoReq{
}
// CS_GAMEMSGID_GET_ACTIVITY_INFO_RES = 5100; //获取活动信息
message CSGetActInfoRes{
int32 ret=1;
repeated DBActInfo activityInfo = 2 [repeatedcount=32];//活动相关信息
DbActExtraInfoData actExtraInfo = 3; //活动额外信息,和活动相关得数据都存放在这个结构
}
//签到活动
message SignActData
{
int32 ActId = 1;//活动ID
bool IsPay = 2;//是否激活付费档
repeated SignRecord records = 3 [repeatedcount = 32];//ID-状态 0:未签到 1:已签到未领取 2:已领取
int32 Num = 4; //补签次数
int32 StartDay = 5;//活动开始得时候是在开服第几天
}
message SignRecord{
int32 day = 1;
bool freeState = 2;//免费档是否领取
bool payState = 3;//付费当是否领取
}
//CS_GAMEMSGID_SIGN_GET_AWARD_REQ = 5100; //领取签到活动奖励
message CSSignGetAwardReq{
int32 actId = 1;
int32 day = 2;
}
// CS_GAMEMSGID_SIGN_GET_AWARD_RES = 5101;
message CSSignGetAwardRes{
int32 ret=1;
}
// CS_GAMEMSGID_SIGN_RE_SING_REQ = 5102;//补签
message CSSignReSingReq{
int32 actId = 1;
int32 day = 2;
}
// CS_GAMEMSGID_SIGN_RE_SING_RES = 5103;
message CSSignReSingRes{
int32 ret=1;
}
// CS_GAMEMSGID_SIGN_INFO_SYNC = 5104; //同步签到数据
message CSSignInfoSync{
repeated SignActData signActData = 3 [repeatedcount =2];
}
//系统解锁信息
message DBSysUnlockData {
repeated DBSysUnlockDataOne sysUnlockDataOne = 1 [repeatedcount=128];//已解锁的系统息
}
message DBSysUnlockDataOne {
int32 sysID = 1;//系统ID
int64 sysUnlockTime = 2;//系统解锁时间
}
message BattlePassData {
int32 actId = 1; //活动id
repeated bool active = 2 [repeatedcount = 2];//是否激活付费
repeated int32 freeIndex = 3 [repeatedcount = 32]; //免费奖励领取索引
repeated int32 payIndex = 4 [repeatedcount = 32];//付费奖励领取索引
repeated int32 supPayIndex = 5 [repeatedcount = 32];//高级档付费奖励领取索引
int32 point = 6;//点数
int64 startTime = 7;//开始时间
int64 endTime = 8;//结束时间
bool sendReward = 9;//活动结束是否发送奖励
int32 reasonType = 10;//
}
//手册活动
message HandBookData{
int32 actId = 1;
int32 stage = 2; //当前解锁阶段
repeated int32 record = 3 [repeatedcount = 8];;//阶段奖励领取记录,stage
}
// CS_GAMEMSGID_HANDBOOK_GET_AWARD_REQ = 5110; //领取手册奖励
message CSHandBookGetAwardReq{
int32 actId = 1;
int32 stage = 2;
}
// CS_GAMEMSGID_HANDBOOK_GET_AWARD_RES = 5111;
message CSHandBookGetAwardRes{
int32 ret = 1;
}
// CS_GAMEMSGID_HANDBOOK_INFO_SYNC = 5112; //同步签到数据
message HandBookInfoSync{
repeated HandBookData handBookData = 1 [repeatedcount = 4];//手册活动数据
}
message LevelAward {
int32 level = 1;
int32 awardStatus = 2; // 0 不可领取 1 可领取 2 领取成功
}
message ShopData {
int32 level = 1;
int32 shopCount = 2; // 购买次数
int32 shopStatus = 3; // 0. 不可购买 1. 可购买 2.已购买
}
message RecruitData{
int32 poolId = 1;
int32 recruitCount = 2;//抽卡次数
int64 lastFreeTime = 3;//免费抽卡了的时间
int64 nextFreeTime = 4;//下次免费
repeated int32 record = 5 [repeatedcount = 6];//某个品质抽卡计数[index =quality-1 value =recruitcount]
int32 spCount = 10; //特殊抽卡次数
int32 totalCount = 11; //累计抽卡次数
repeated int32 choseReward = 12 [repeatedcount = 4];//已经领取的自选奖励
}
// CS_GAMEMSGID_RECRUIT_REQ = 5120; //抽奖
message RecruitReq{
int32 poolId = 1;
int32 recruitCount = 2;
}
// CS_GAMEMSGID_RECRUIT_RES = 5121;
message RecruitRes{
int32 ret = 1;
repeated CSItemChgInfo rewards = 5 [repeatedcount = 10]; //具体得到的内容
}
// CS_GAMEMSGID_RECRUIT_INFO_SYNC = 5122; //抽奖数据
message RecruitInfoSync{
repeated RecruitData recruitData =1 [repeatedcount =4];
}
// CS_GAMEMSGID_RECRUIT_CHOOSE_REWARD_REQ = 5123; //卡池自选奖励领取
message CSRecruitRewardReq{
int32 poolId = 1;
int32 chooseId = 2;
int32 chooseIndex = 3;
}
// CS_GAMEMSGID_RECRUIT_CHOOSE_REWARD_RES = 5124;
message CSRecruitRewardRes{
int32 ret = 1;
int32 poolId = 3;
int32 chooseId = 4;
int32 chooseIndex = 5;
RecruitData data = 6;
}
message DBBagChangeRecord{
int32 type = 1; //1钱,2钻石
int64 changeValue = 2; //变化值
int64 newValue = 3; //最新值
int32 reason = 4;//原因
int64 changeTime = 5;//时间
}
message DBRoleUnimportanceData{
int32 magicNum = 2;
string clientData = 3 [stringlength=64];
uint64 clientBitFlag = 4;
repeated DBBagChangeRecord DBBagChangeRecordList = 5 [repeatedcount=202];//金钱钻石变化
}
enum MailOpType {
MailOpType_None = 0;
MailOpType_Insert = 1;
MailOpType_Delete = 2;
MailOpType_GetItem = 3; //领取
MailOpType_Read = 4; //读取
MailOpType_AllGetItem = 5; //一键领取
MailOpType_AllDelete = 6; //一键删除已读
MailOpType_GetItemDel = 7; //领取并删除邮件
MailOpType_MailVerChange = 8; //群发邮件版本号变更
MailOpType_Update = 9; //修改邮件内容
}
enum MailType {
MailType_None = 0;
MailType_FriendGiftDaily = 1; //好友每日礼物
MailType_FacebookLoginFirst = 3; //第一次使用Facebook登录
MailType_SendToPlayer = 8; // 玩家发的邮件
MailType_InviteeSuccessReward = 9; //邀请的玩家达到要求,发奖一次
MailType_ActRank = 44;//活动榜
MailType_Compensation = 46;//补偿金邮件
}
message DBMail{
int32 mailConfId = 13; //邮件配置表
int64 uid = 1;
uint32 mailID = 2;
int32 mailType = 3;//类型,预留,普通邮件为0
int64 senderUid = 4; //发送者的uid,sender为0表示系统邮件
string senderName = 5 [stringlength=32]; //发送者的名字
string senderIcon = 6 [stringlength=32];
int64 sendTime = 7;
string title = 8 [stringlength=64];
string content = 9 [stringlength=1024];
int64 getItemTime = 10; //领取邮件附件的时间
string addReward = 11 [stringlength=32]; //如果配置了reward,需要转一下到addGoods
repeated TypeIDValueString addGoods = 12 [repeatedcount=12]; //增加物品,TypeIDValue32 Type为物品ID Id为物品ID,value 为数量
int64 insertUniqueID = 14; //插入时候的消息里的唯一ID,免得重复了
int64 deleteTime = 15;//删除时间,为了逻辑正确,邮件采用标记删除,除非邮件很大或者过期了
int64 param1 = 16; //参数1,方便客户端构造邮件内容等使用
int64 param2 = 17; //参数2,方便客户端构造邮件内容等使用
string paramStr1 = 18 [stringlength=32]; //字符串参数1,方便客户端构造邮件内容等使用
int64 param3 = 19;
int64 param4 = 20;
int64 param5 = 21;
uint32 status = 23; //邮件状态 1已读
repeated int32 realmlist = 24 [repeatedcount=6];//服务器列表 长度0 表示全服
int64 expirationTime = 25; //过期时间
string language = 26 [stringlength=64];
string uuid = 27 [stringlength=64]; //uuid
int32 isSendAllUser = 28; // 1:跳过语言校验,发送给全服,0:保留语言校验
string apkVersion = 30 [stringlength=64]; // 是否为版本限制邮件
int64 playerCreateTimeLimit = 31; // 该时间前创建的玩家会收到是版本升级邮件
}
message DBMailBlob{
uint32 lastSeq = 1;
repeated DBMail mailList = 2 [repeatedcount=150];
int64 todayResetTime = 3;//用来做每日限制
int32 friendDailyChipMailCount = 4;//每日好友送钱
int32 inviteeSuccessMailCount = 5;//每日邀请成功送钱
int32 sysMailId = 6;
int64 lastVer = 7; //最后集体邮件版本号
}
//CS_MSGID_ACCOUNT_REQ
message CSAccountAuthReq {
AccountInfo account = 1;
VersionInfo version = 2;
string deviceId = 3 [stringlength=64];
// iphone5S
string deviceInfo = 4 [stringlength=64];
// android4.2
string osInfo = 5 [stringlength=64];
// 2g 3g 4g wift
string netInfo = 6 [stringlength=32];
// cn is 8
int32 timezone = 7;
// comm,qq,360
string channel = 8 [stringlength=32];
uint32 serverID = 9;
string ip = 10 [stringlength=16]; //服务器填,客户端不用管
// 英雄登录时, 用于获取accessToken的一次性code
string authCode = 11 [stringlength=64];
string taDistinctID = 12 [stringlength=64]; //ta访客id
int64 channelId = 13; // heroSDK获取的channelId
string signature = 15 [stringlength=128]; //用户态签名
string rawData = 16 [stringlength=256]; //开放数据
}
//1201 facebook服务器帐号验证出现问题,请稍后再试
//1202 同设备id在一段时间内登录的不同帐号数量太多,请等待一段时间
//1203 服务器拒绝登录
//CS_MSGID_ACCOUNT_RES
message CSAccountAuthRes {
int32 ret = 1;
string token = 2 [stringlength=256];
AccountInfo account = 3;
uint32 serverID = 4;
string nick = 5 [stringlength=32];
int32 gender = 6;
string icon = 7 [stringlength=32];
int32 timeZone = 8; //时区信息
int64 checkCode = 9; //校验码
int32 lastLoginRealm = 10; //最后登录的realm
string clientVer = 11 [stringlength=32]; // 当前客户端版本号
int32 grade = 12; // 玩家评价信息
}
//CS_MSGID_GAME_LIST_REQ
message CSGameListReq {
int32 startRealmId = 1; // 废弃
int32 accountType = 2; //客户端不用填这个
string accountID = 3 [stringlength=256];//客户端不用填这个
string clientVer = 4 [stringlength=32]; // 当前客户端版本号,客户端不用填
string ip = 5 [stringlength=16]; //服务器填,客户端不用管
string areaName = 6 [stringlength=16];//大区名称,东南亚大区 (缩写SEA) 欧洲大区 (缩写EUR) 美洲大区 (缩写America?)
int32 lastLoginRealm = 7; //最后登录的realm
int32 reqPage = 8; // 请求的realm分页, 首次请求填-1
int32 cltTimezone = 9; // 客户端所在时区, 计算推荐服使用
repeated int32 createRoleRealms = 11 [repeatedcount=128]; // 已创建角色的realmId
uint32 fromGameSvr = 12; // 发送请求的gamesvr
uint32 fromWorldSvr = 13; // 发送请求的worldsvr
int64 fromAccountSession = 14; // 发送请求的account session
int64 fromUid = 15; // 发送请求的uid
int32 realmId = 16; // 发送请求的realmId
string deviceId = 17 [stringlength=64];
}
//CS_MSGID_GAME_LIST_RES
message CSGameListRes {
int32 leftCount = 1; //后面还有几个, 废弃
repeated CSRealmInfo realms = 2 [repeatedcount=128]; // realmsvr负责填充
repeated CSRoleBrief roleList = 3 [repeatedcount=128]; // accountsvr负责填充
string areaName = 4 [stringlength=16];//大区名称,东南亚大区 (缩写SEA) 欧洲大区 (缩写EUR) 美洲大区 (缩写America?)
CSRealmInfo recommendRealm = 5; // 推荐服, 没有角色时才推荐
int32 realmPerPage = 6; // 每页显示几个realm
int32 currPage = 7; // 当前是第几页
int32 totalPage = 8; // 一共多少页
int32 accountType = 9;
string accountID = 10 [stringlength=256];
uint32 fromGameSvr = 11; // 发送请求的gamesvr
uint32 fromWorldSvr = 12; // 发送请求的worldsvr
int64 fromAccountSession = 13; // 发送请求的account session
int64 fromUid = 14; // 发送请求的uid
int32 realmId = 15; // 发送请求的realmId
}
// CS_GAMEMSGID_WRAP_GAME_LIST_REQ
message CSWrapGameListReq {
CSGameListReq gameListReq = 1;
}
// CS_GAMEMSGID_WRAP_GAME_LIST_RES
message CSWrapGameListRes {
CSGameListRes gameListRes = 1;
}
//CS_MSGID_GAMEAREA_SERVERIP_REQ = 101;
message CSGameAreaServerIPReq {
string areaName = 1 [stringlength=16];//大区名称,不填会返回所有大区
int32 accountType = 2; //客户端不用填这个
string accountID = 3 [stringlength=256];//客户端不用填这个
string clientVer = 4 [stringlength=32]; // 当前客户端版本号,客户端不用填
string ip = 5 [stringlength=16]; //服务器填,客户端不用管
string deviceId = 6 [stringlength=64];
}
//CS_MSGID_GAMEAREA_SERVERIP_RES = 102;
message CSGameAreaServerIPRes {
repeated CSAreaServerIPInfo areaInfo = 1 [repeatedcount=16];
}
// CS_MSGID_ACCOUNT_SVR_CHG_NOTIFY
message CSAccountSvrChgNotify {
}
//CS_MSGID_VERSION_REQ
message CSVersionCheckReq {
VersionInfo version = 1;
string apkVersion = 2 [stringlength=32]; //上报一下apk的版本
string deviceId = 3 [stringlength=64]; //设备id
}
message AABDownloadInfo {
string downloadUrl = 1 [stringlength=256]; //更新包地址
int32 patchFileSize = 2; //更新包大小
string patchFileMd5 = 3 [stringlength=64]; //更新包md5
string downloadUrlBackup = 4 [stringlength=256]; //更新包地址(备用)
}
//CS_MSGID_VERSION_RES
message CSVersionCheckRes {
int32 ret = 1;
string newVersion = 2 [stringlength=32]; //最新版本号
string downloadUrl = 3 [stringlength=128]; //更新包地址
string gateUrl = 4 [stringlength=64]; //gate_lobby服务器的连接地址(ip或者url:port)
int64 chip = 5; //筹码
int64 diamond = 6; //钻石
int32 itemID = 7; //道具ID
int32 itemCount = 8; //道具数量
string content = 9 [stringlength=16384]; //显示内容
int32 patchFileSize = 10; //更新包大小
string patchFileMd5 = 11 [stringlength=32];//更新包md5
int32 forReview = 12; //是否审核版本
int32 maintenanceMode = 13; //服务器是否在维护
string maintenanceNotice = 14 [stringlength=512]; //维护的话维护公告
int32 needUpdateApk = 15; // 找不到客户端版本到当前最新版本的更新包, 需要去商店更新apk
int32 hotPatchFileSize = 16; // 当前版本的热更(静默更新)文件
string hotPatchFileMd5 = 17 [stringlength=32]; // 当前版本的热更(静默更新)文件md5
string hotPatchDownloadUrl = 18 [stringlength=128]; // 热更包地址
string apkMarketUrl = 19 [stringlength=128]; //apk更新地址
int32 hotPatchUpdateSelf = 20; //是否hotpatch更新自己
int32 maintenanceRemainTime = 21; // 剩余维护时间
AABDownloadInfo aabDownloadInfo = 22;
string downloadUrlBackup = 23 [stringlength=128]; //更新包地址 (备用)
string hotPatchDownloadBackupUrl = 24 [stringlength=128]; // 热更包地址 (备用)
}
//CS_MSGID_BIND_GUEST_FACEBOOK_REQ
message CSBindGuestFacebookReq {
AccountInfo account = 1;
int64 uid = 2;
string guestAccountID = 3 [stringlength=256];
}
// 2001 校验失败
// 2002 Facebook帐号已经绑定了一个游戏帐号了,无法再次绑定
//CS_MSGID_BIND_GUEST_FACEBOOK_RES
message CSBindGuestFacebookRes {
int32 ret = 1;
int32 accountType = 2;
string facebookAccountID = 3 [stringlength=256];
string email = 4 [stringlength=32];
string nick = 5 [stringlength=32];
}
//CS_MSGID_UNBIND_GUEST_FACEBOOK_REQ = 21;
message CSUnBindGuestFacebookReq {
AccountInfo account = 1;
int64 uid = 2;
string guestAccountID = 3 [stringlength=256];
}
//CS_MSGID_UNBIND_GUEST_FACEBOOK_RES = 22;
message CSUnBindGuestFacebookRes {
int32 ret = 1;
int32 accountType = 2;
string facebookAccountID = 3 [stringlength=256];
string newNick = 4 [stringlength=32]; //新昵称
string newIcon = 5 [stringlength=32];//新头像
}
enum GmBit
{
GmBit_None = 0;
GmBit_Smash = 1; // 秒杀
GmBit_Invincible = 2; // 无敌
GmBit_Max = 3;
}
//CS_GAMEMSGID_GMCMD
message CSGmCmd{
string cmdStr = 1 [stringlength = 1024];
}
//CS_GAMEMSGID_LOGIN_REQ
message CSLoginReq {
AccountInfo account = 1;
VersionInfo version = 2;
int32 realmId = 3;
string apkVersion = 4 [stringlength=32]; //上报一下apk的版本
int32 zipHotPatch = 5; //热补丁是否压缩
string deviceId = 6 [stringlength=64]; //设备id
string hotPatchMd5 = 7 [stringlength=32]; //客户端当前版本热补丁文件的MD5
string deviceInfo = 8 [stringlength=64]; //htc t100
int64 checkCode = 9; //校验码
uint32 gateServerId = 10; // 11 12 是服务器填的,客户端不用填(其实不用这个也可以,gategame的sessionID前48位就是instid)
string IPAddr = 11 [stringlength=32];
QQPayInfo qqpayinfo = 12;// qq平台登录的时候需要,支付用
int64 channelId = 13; // heroSDK获取的channelId
int64 appChannelId = 14; // heroSDK获取的app_channelId
int32 battleVersion = 15; // 战斗版本号
string taDistinctID = 16[stringlength=64]; // ta访客id
string sdkLib = 17 [stringlength=32]; //sdk 类型
string sdkLibVersion = 18 [stringlength=64]; //sdk 版本
string networkType = 19 [stringlength=64]; //网络状态
string carrier = 20 [stringlength=64]; //网络运营商
string bundleId = 21 [stringlength=64]; //app包名或者进程名
string deviceType = 22 [stringlength=64]; //设备类型
string manufacturer = 23 [stringlength=64]; //生产商
string device_aid = 24 [stringlength=64];
string device_bid = 25 [stringlength=64];
string device_aid_init = 26 [stringlength=64];
string device_bid_init = 27 [stringlength=64];
string appChannelIdBdc = 28 [stringlength=64]; // bdc app_channelId
string deviceIdBdc = 29 [stringlength=64]; //设备id
string appChannelName = 30[stringlength=64]; // heroSDK获取的
string device_appid = 31 [stringlength=64];
}
//CSErrCode_PlayerWaitLogin 登录人数限制,服务器满了
//CS_GAMEMSGID_LOGIN_RES
message CSLoginRes {
int32 ret = 1;
int64 uid = 2;
int64 serverTime = 3; //服务器时间
string curVersion = 4 [stringlength=32];//服务器版本,客户端根据这个可以判断是否需要重启进行版本匹配,进行更新
int32 abTestFlag = 5; // 开启某些abTest规则
int64 loginToken = 6; //登陆标记用于服务器检测
int32 timeZone = 7; //游戏服务器的时区
int32 useInterpT = 8; //使用解释模式 0: 默认ILRunTime 1:使用mono
int32 isAudit = 9; // 是否在审核中 1为审核中,默认为0
int64 serverOpenTime = 10; // 服务器开服时间,unixtime
}
//CS_GAMEMSGID_QUERY_ROLE_REQ
message CSQueryRoleReq {
int64 uid = 1; //客户端用
int64 playerSessionID = 2; //服务器检测时添加
int32 ret = 3; //world检测后返回
}
message HeroPropViewOne {
repeated ID32Value64 propVal = 1 [repeatedcount = 512];
}
// 面板显示属性
message HeroPropView {
HeroPropViewOne knight = 1; // 骑士展示属性
}
//CS_GAMEMSGID_QUERY_ROLE_RES
message CSQueryRoleRes {
int32 ret = 1;
DBRoleBase roleBase = 2;
DBRoleData roleData = 3;
DBRoleUnimportanceData unimportanceData = 4;
int64 gagChatEndTime = 5; //禁言结束时间
int64 freezeTime = 6; // 解封时间
FreezeReasonType freezeReason = 7; // 封禁原因
string freezeReasonStr = 8 [stringlength=128]; // 自定义封禁原因
HeroPropView propView = 9; // 面板显示属性
bool isNew = 10; //新注册
}
enum FreezeReasonType
{
FreezeReasonType_None = 0; //
FreezeReasonType_ViolationInGame = 1; //游戏内违规行为
FreezeReasonType_MailciousInfo = 2; //发布不良信息
FreezeReasonType_Plugins = 3; //违规使用脚本外挂
FreezeReasonType_Curse = 4; //诽谤辱骂他人
FreezeReasonType_Other = 5; //其他
}
//CS_GAMEMSGID_KICK_OFF
message CSKickOff {
int32 ret = 1;
int64 freezeTime = 6; // 解封时间
FreezeReasonType freezeReason = 7; // 封禁原因
}
//CS_GAMEMSGID_PAY_REQ
message CSPayReq {
int64 uid = 1;
int32 payType = 2;
int32 itemID = 3;
}
//CS_GAMEMSGID_PAY_RES
message CSPayRes {
int32 ret = 1;
int64 uid = 2;
int32 payType = 3;
int32 itemID = 4;
string orderId = 5 [stringlength=128]; //订单号
}
message CSPayItemInfo {
uint32 diamond = 1;
int64 chip = 2;
int64 vipExp = 3; // vip经验
int64 heroExpPool = 4; // 英雄池经验
int32 vipCardType = 5;
}
message CSPaySelectItem {
int32 grid = 1; // 格子
int32 groupSeq = 2; // 格子对应的物品组内部seq, 加快校验, 如果对应seq找不到就整个组
TypeIDValueString item = 3;
}
//google支付请求
//CS_GAMEMSGID_PAY_GOOGLE_REQ
message CSPayGoogleReq {
int64 uid = 1;
int32 itemID = 2;
int32 param1 = 3; // 参数1
int32 param2 = 4; // 参数2
int32 isTestPay = 5; // 测试支付
repeated CSPaySelectItem selectItems = 6 [repeatedcount=6]; // 自选商品 (旧舍弃
PayChannel payChannel = 8;//支付渠道,sdk、代币
int32 jsApiPay = 9; //1为用jsapi
}
//100601 已经不在有效期内
//100602 购买次数限制
//100603 缺少折扣券
//100604 vip等级限制
//CS_GAMEMSGID_PAY_GOOGLE_RES
message CSPayGoogleRes {
int32 ret = 1;
int64 uid = 2;
int32 itemID = 3;
string orderId = 4 [stringlength=128]; //订单号
string paymentId = 5 [stringlength=32]; // 支付id, 客户端SDK传这个支付id
repeated CSPaySelectItem selectItems = 6 [repeatedcount=6]; // 自选商品
string signData = 7 [stringlength=256];//支付js原串
string paySig = 8 [stringlength=128];//支付签名
string signature = 9 [stringlength=128];//用户态签名
int32 jsApiPay = 10; //1为用jsapi
string jsApiData = 11 [stringlength=2048];
PayChannel payChannel = 12;//支付渠道,sdk、代币
}
//google支付成功后的请求,purchaseData表示支付数据,google返回
//CS_GAMEMSGID_PAY_GOOGLE_SUCCESS_REQ
message CSPayGoogleSuccessReq {
int64 uid = 1;
string purchaseData = 3 [stringlength=16384];
string signature = 4 [stringlength=512];
string orderId = 5 [stringlength=128]; //订单号,ios使用
string orderId3rd = 6 [stringlength=128];
}
//
//CS_GAMEMSGID_PAY_GOOGLE_SUCCESS_RES
message CSPayGoogleSuccessRes {
int32 ret = 1;
int64 uid = 2;
int32 itemID = 3;
string orderId = 4 [stringlength=128]; //订单号
uint32 money = 6; //充值的钱,客户端可根据这个上报第三方平台
uint32 diamond = 7;
int64 chip = 8;
int32 vipCardType = 10;
int64 vipExp = 11; // vip经验
repeated TypeIDValueString items = 15 [repeatedcount=10]; // 通用的商品新结构
string purchaseToken = 16 [stringlength=128]; // 目前华为支付使用
uint32 payDiamond = 17;
}
// 领取商城里的免费物品
//CS_GAMEMSGID_PAY_GET_FREE_ITEM_REQ
message CSPayGetFreeItemReq {
int32 itemID = 1;
repeated CSPaySelectItem selectItems = 2 [repeatedcount=6]; // 自选商品
}
//CS_GAMEMSGID_PAY_GET_FREE_ITEM_RES
message CSPayGetFreeItemRes {
int32 itemID = 1;
int32 ret = 2; // 领取结果
uint32 diamond = 3;
int64 chip = 4;
int32 vipCardType = 6;
int64 vipExp = 7; // vip经验
repeated TypeIDValueString items = 11 [repeatedcount=10]; // 通用的商品新结构
uint32 payDiamond = 12; //
}
// 商城新物品上架通知
//CS_GAMEMSGID_PAY_NEW_ITEM_NOTIFY
message CSPayNewItemNotify {
int32 itemID = 1;
int32 startTime = 2;
int32 endTime = 3;
int32 adapType = 4; // adap弹出礼包类型
int32 adapId = 5; // adapId
int32 grade = 6; // 档次
int32 triggerParam = 7; // 触发参数, 目前只用于adap弹出礼包
int32 triggerEvent = 8; // 触发事件
}
message PayItemStockInfo {
int32 itemID = 1;
int32 count = 2;
}
// 库存信息
//CS_GAMEMSGID_PAY_ITEM_STOCK_INFO_REQ
message CSPayItemStockInfoReq {
repeated int32 itemId = 1 [repeatedcount=32];
}
//CS_GAMEMSGID_PAY_ITEM_STOCK_INFO_RES
message CSPayItemStockInfoRes {
repeated PayItemStockInfo itemInfo = 1 [repeatedcount=32];
}
// 客户端触发物品上架请求
//CS_GAMEMSGID_CLIENT_TRIGGER_ITEM_ARRIVE_REQ
message CSClientTriggerItemArriveReq {
int32 adapType = 1;
}
//CS_GAMEMSGID_PAY_DIAMOND_HOLDER_QUERY_REQ = 1009; //查询托管钻石数量开始
message CSPayDiamondHolderQueryReq{
}
//CS_GAMEMSGID_PAY_DIAMOND_HOLDER_QUERY_RES = 1010;
message CSPayDiamondHolderQueryRes{
int32 newDiamond = 1;
}
//CS_GAMEMSGID_QUERY_FRIEND_LIST_REQ = 1021; // 完整的好友列表信息
message CSQueryFriendListReq {
}
//CS_GAMEMSGID_QUERY_FRIEND_LIST_RES = 1022;
message CSQueryFriendListRes {
//包含自己的排行版信息
DBFriendSelf self = 1;//自己的
DBFriendList list = 2;//好友列表
}
//CS_GAMEMSGID_FRIEND_SELF_CHG_NOTIFY = 1025;//通知我的好友数据(自己部分)变化,全量
message CSFriendSelfChgNotify {
DBFriendSelf self = 1;//自己的
}
//CS_GAMEMSGID_FRIEND_LIST_CHG_NOTIFY = 1026;//通知我的好友数据(列表部分)变化,增量
message CSFriendListChgNotify {
int32 isDelete = 1;
DBFriendOne friend = 2; // isDelete = 1时, DBFriendOne里只会填uid, 其他信息不填
}
//CS_GAMEMSGID_GIVE_FRIEND_ENERGY_DAILY_REQ
message CSGiveFriendEnergyDailyReq {
int64 friendUid = 1;
}
//CS_GAMEMSGID_GIVE_FRIEND_ENERGY_DAILY_RES
message CSGiveFriendEnergyDailyRes {
int32 ret = 1;
int64 friendUid = 2;
int64 giveTime = 3;
}
message CSFriendGiftData{
int64 uid = 1; // 0 没有 1 收到礼物
int32 lastSendGiftTime = 2; // 上一次送该好友礼物的时间
int32 recvGiftNum = 3;
int32 lastGetGiftTime = 4; // 领取好友礼物的时间
}
//CS_GAMEMSGID_FRIEND_GIFT_OP_REQ = 1323; //好友礼物操作
message CSFriendGiftOpReq {
int32 opType = 1; // 1赠送 2领取
int64 friendUid = 2;
}
//CS_GAMEMSGID_FRIEND_GIFT_OP_RES = 1324; //好友礼物操作
message CSFriendGiftOpRes {
int32 ret = 1;
int32 opType = 2; // 1赠送 2领取
// 好友的数据, 对方不是好友时不会填
CSFriendGiftData giftData = 3;
// 自己的数据
int32 todaySelfSendGift = 4; // 今天已经发送的礼物数量
int32 todaySelfRecvGift = 5; // 今天已经收到的礼物数量
int32 lastResetGiftDataTime = 6; // 重置今天礼物数据的时间
}
//CS_GAMEMSGID_FRIEND_GIFT_AUTO_OP_REQ = 1325; //好友礼物自动赠送领取
message CSFriendGiftAutoOpReq {
}
//CS_GAMEMSGID_FRIEND_GIFT_AUTO_OP_RES = 1326; //好友礼物自动赠送领取
message CSFriendGiftAutoOpRes {
repeated int64 sendList = 1 [repeatedcount=32]; // 赠送成功的好友
int32 lastSendGiftTime = 2;
repeated int64 recvList = 3 [repeatedcount=32]; // 领取成功的好友
// 自己的数据
int32 todaySelfSendGift = 4; // 今天已经发送的礼物数量
int32 todaySelfRecvGift = 5; // 今天已经收到的礼物数量
int32 lastResetGiftDataTime = 6; // 重置今天礼物数据的时间
}
//CS_GAMEMSGID_FRIEND_SEND_GIFT_NOTIFY = 1327; // 好友赠送自己礼物的通知
message CSFriendSendGiftNotify {
int64 sendUid = 1; // 收到好友赠送的礼物
int64 sendTime = 2;
}
//CS_GAMEMSGID_GET_FRIEND_GIFT_DATA_REQ = 1328; // 拉取好友礼物的完整数据
message CSGetFriendGiftDataReq {
}
//CS_GAMEMSGID_GET_FRIEND_GIFT_DATA_RES = 1329; // 拉取好友礼物的完整数据
message CSGetFriendGiftDataRes {
// 自己的数据
int32 todaySelfSendGift = 1; // 今天已经发送的礼物数量
int32 todaySelfRecvGift = 2; // 今天已经收到的礼物数量
int32 lastResetGiftDataTime = 3; // 重置今天礼物数据的时间
// 好友的数据
repeated CSFriendGiftData giftData = 4 [repeatedcount=32];
}
//CS_GAMEMSGID_GIVE_FRIEND_ENERGY_DAILY_TIME_RESET_NOTIFY
message CSGiveFriendEnergyDailyTimeResetNotify{
}
//CS_GAMEMSGID_FRIEND_OP_REQ = 1301; //好友操作请求(邀请,同意,拒绝,删除等)
message CSFriendOpReq{
int32 opType = 1;
int64 targetUid = 2;
int32 opSeq = 3; //唯一序列号,同意,拒绝,删除的时候需要
}
//CS_GAMEMSGID_FRIEND_OP_RES = 1302; //好友操作回应
message CSFriendOpRes{
int32 opType = 1;
int64 targetUid = 2;
int32 opSeq = 3; //唯一序列号,同意,拒绝,删除的时候需要
int32 ret = 4;
}
//CS_GAMEMSGID_FRIEND_OP_LIST_CHG_NOTIFY
message CSFriendOpListChgNotify{
int32 isDelete = 1;
DBFriendOneOp chgOp = 2; // isDelete = 1时, DBFriendOne里只会填uid, 其他信息不填
}
//CS_GAMEMSGID_QUERY_FRIEND_OP_REQ = 1305;//查询好友op信息,全量
message CSQueryFriendOpReq{
}
//CS_GAMEMSGID_QUERY_FRIEND_OP_RES = 1306;//查询好友op信息,全量
message CSQueryFriendOpRes{
int32 ret = 1;
DBFriendOpData opData = 2;
}
//CS_GAMEMSGID_FRIEND_STRANGER_LIST_CHG_NOTIFY = 1313; //陌生人列表更新
message CSFriendStrangerListChgNotify{
DBFriendStrangerOne stranger = 1;
}
//CS_GAMEMSGID_FRIEND_STRANGER_LIST_DELETE_NOTIFY = 1314; //陌生人列表删除
message CSFriendStrangerListDeleteNotify{
int64 strangerUid = 1;
}
//CS_GAMEMSGID_FRIEND_QUERY_INFO_BY_UID_REQ = 1315; //根据uid查询信息
message CSFriendQueryInfoByUidReq{
int64 targetUid = 1;
}
//CS_GAMEMSGID_FRIEND_QUERY_INFO_BY_UID_RES = 1316; //根据uid查询信息
message CSFriendQueryInfoByUidRes{
int64 targetUid = 1;
int32 ret = 2;
DBFriendOne info = 3;
repeated DBFriendHeroOne mainlineHeros = 4 [repeatedcount=8]; // 主线阵容
}
//CS_GAMEMSGID_FRIEND_GET_RECOMMENDER_REQ = 1317; //推荐好友
message CSFriendGetRecommenderReq{
}
//CS_GAMEMSGID_FRIEND_GET_RECOMMENDER_RES = 1318; //推荐好友
message CSFriendGetRecommenderRes{
repeated DBFriendOne list = 1 [repeatedcount=32]; //推荐列表
}
//CS_GAMEMSGID_FRIEND_QUERY_STRANGER_REQ = 1319; //客户端拉取好友新的聊天记录
message CSFriendQueryStrangerReq{
}
//CS_GAMEMSGID_FRIEND_QUERY_STRANGER_RES = 1320; //客户端拉取好友聊天记录
message CSFriendQueryStrangerRes{
repeated DBFriendStrangerOne list = 1 [repeatedcount=32];//全量
}
//CS_GAMEMSGID_FRIEND_SET_SETTING_REQ = 1321; //设置
message CSFriendSetSettingReq{
int32 autoAccept = 1; //是否自动同意添加好友
int32 refuseAll = 2; //拒绝所有人,不能让其他人添加我为好友
}
//CS_GAMEMSGID_FRIEND_SET_SETTING_RES = 1322; //设置
message CSFriendSetSettingRes{
int32 ret = 1;
int32 autoAccept = 2; //自动同意他人邀请我为他的好友
int32 refuseAll = 3; //拒绝所有人,不让其他人邀请我
}
//CS_GAMEMSGID_FRIEND_QUERY_BLACKLIST_REQ = 1330; // 好友 查询黑名单
message CSFriendQueryBlacklistReq{
}
//CS_GAMEMSGID_FRIEND_QUERY_BLACKLIST_RES = 1331; // 好友 查询黑名单
message CSFriendQueryBlacklistRes{
int32 ret = 1;
repeated DBFriendOne blackList = 2 [repeatedcount=128];
}
//CS_GAMEMSGID_QUERY_MAIL_REQ
message CSQueryMailReq {
}
//CS_GAMEMSGID_QUERY_MAIL_RES
message CSQueryMailRes {
repeated DBMail mailList = 1 [repeatedcount=150];
}
//CS_GAMEMSGID_MAIL_OP_REQ
message CSMailOpReq {
int32 opType = 1;
uint32 mailID = 2;
}
//104401 邮件不存在
//104402 已经领取了
//104403 正在领取,请等待
//CS_GAMEMSGID_MAIL_OP_RES
message CSMailOpRes {
int32 ret = 1;
int32 opType = 2;
DBMail mail = 3;
repeated int64 listMId = 4 [repeatedcount = 256];
}
//CS_GAMEMSGID_MAIL_CHG_NOTIFY = 1981; //邮件变化通知,现在只有delete
message CSMailChgNotify {
repeated int64 delMailId = 1 [repeatedcount = 256];
}
//CS_GAMEMSGID_RENAME_REQ
message CSRenameReq {
string newName =1 [stringlength=32];
}
//CS_GAMEMSGID_RENAME_RES
message CSRenameRes {
int32 ret = 1;
string newName =2 [stringlength=32];
int32 renameTimes = 3;
}
//CS_GAMEMSGID_CHANGE_ICON_REQ
message CSChangeIconReq{
string newIcon = 1 [stringlength=32];
}
//CS_GAMEMSGID_CHANGE_ICON_RES
message CSChangeIconRes{
int32 ret = 1;
string newIcon = 2 [stringlength=32];
}
// CS_GAMEMSGID_ICON_DATA_NOTIFY
message CSIconDataNotify{
DBIconData data = 1;
}
//CS_GAMEMSGID_SYSPAYCHANEL_REQ = 1073; //付费通道
message CSSysPayChanelReq {
int32 seq = 1;
}
//CS_GAMEMSGID_SYSPAYCHANEL_RES = 1074; //付费通道
message CSSysPayChanelRes {
int32 seq = 1;
int32 closePayChanel= 2;
}
//CS_GAMEMSGID_SHARE_FACEBOOK_SUCCESS_REQ
message CSShareFacebookSuccessReq {
int32 dailyRewardID = 1;
}
//CS_GAMEMSGID_SHARE_FACEBOOK_SUCCESS_RES
message CSShareFacebookSuccessRes {
int32 ret = 1;
int32 dailyRewardID = 2;
int32 dailyRewardCount = 3;
int32 rewardChip = 4;
}
//CS_GAMEMSGID_SHARE_FACEBOOK_CHG
message CSShareFacebookChg {
repeated DBIDValue Daily = 1 [repeatedcount=32]; //每日变化通知
}
//CS_GAMEMSGID_INVITE_FACEBOOK_SUCCESS_REQ
message CSInviteFacebookSuccessReq {
int32 inviteCount = 1;
}
//CS_GAMEMSGID_STATISTICS_CHG
message CSStatisticsChg {
int32 isNewDay = 1;//是否是新的一天
repeated DBIDValue Daily = 2 [repeatedcount=32]; //每日变化通知
repeated DBIDValue Total = 3 [repeatedcount=32]; //总共变化通知
}
message DBRoleOneRankInfo {
int64 lastRankTime = 1;//上次排行版的有效时间,秒
int32 rankType = 2; //排行版类型
int64 rankScore = 3; //排行版数据
int32 position = 4; //上次结算第几名,本周的第几名客户端自己排
int32 getReward = 5;//上次奖励是否已经领取
int64 positionScore = 6; //结算时候的数据,处理同步问题使用
int32 positionFriendCount = 7;//结算时候的好友数量
repeated uint32 positionListLastWeek = 8 [repeatedcount=128]; //上周排行榜我的好友的名次,如果不在这个列表里的好友排后面
}
//客户端发给服务器->服务器回应->客户端回应
//CS_MSGID_PING
//CS_GAMEMSGID_PING
message CSPing {
int64 clientTime = 1;
int64 serverTime = 2;
int32 seq = 3;
}
//CS_GAMEMSGID_CHATPING
message CSChatPing {
int64 clientTime = 1;
int64 serverTime = 2;
int32 seq = 3;
}
//CS_GAMEMSGID_BATTLEPING
message CSBattlePing {
int64 clientTime = 1;
int64 serverTime = 2;
int32 seq = 3;
}
enum RoleRankType {
WEEK_WIN_ROUND_COUNT = 0;//按周刷新的玩牌赢的次数
WEEK_WIN_CHIP = 1;//周赢钱
}
enum PayChannel{
TRD_SDK=0; //sdk支付
GAME_TOKEN=1; //代币支付
}
//聊天类型(现在就只弄好友和世界,之后估计有帮会 队伍之类的)
enum ChatChannelType {
ChatChannelType_None = 0;
ChatChannelType_Friend = 1;
ChatChannelType_World = 2;
ChatChannelType_BigRealm = 5; //大区
}
message DBRuinProtectData {
int32 protectCount = 1;
}
enum ChatType{
ChatType_None = 0;
ChatType_Emoticon = 2; //普通表情
ChatType_PrivilegeEmoticon = 3; //特权表情
ChatType_MagicEmotion = 4; //魔法表情
ChatType_FriendSendChip = 5; //好友送钱给你
ChatType_FriendRoomInvite = 6; //好友房邀请
}
//CS_GAMEMSGID_CHATLOGIN_REQ = 1017; // 聊天登录请求
message CSChatLoginReq {
int64 playerUid = 1;
DBRoleBase roleBase = 2; //用于chat从game获取玩家信息(前端不用填)
string lang = 3 [stringlength=32]; //前端不用填
DBSysData sysData = 4; //前端不用,(黑名单数据)
bool needSycClient = 5; //是否需要同步客户端
CSErrCode ret = 6; //前端不用填
int32 realmId = 7;
int64 loginToken = 8; //登陆标签(客户端填1002返回的LoginToken);
int64 enableMsgTime = 9; // 禁言时间
DBExtData extData = 10; //额外数据,前端不用填
}
//CS_GAMEMSGID_CHATLOGIN_RES = 1018; // 聊天登录回应
message CSChatLoginRes {
int64 uid = 1;
CSErrCode ret = 2;
}
//CS_GAMEMSGID_CHAT_REQ
message CSChatReq {
int64 uid = 1;
int32 type = 2;
string message = 3 [stringlength=256];
int64 targetUid = 4;
ChatChannelType chatChannelType = 5;
int32 vipCardId = 6;//服务器填
string lang = 7 [stringlength=32];
int64 checkToken = 8; //客户端填1002返回的LoginToken;
int64 localChatSeq = 9; //本地当前保存成功的seq
int64 channelParam = 10; // 频道参数 比如公会id,地区id
}
//聊天框消息类型
enum ChatMessageType{
CommonChat = 0; //普通聊天消息
SystemNotify = 1; //系统通知
}
//CS_GAMEMSGID_CHAT_RES
message CSChatRes {
int64 uid = 1; //发送者uid
string nick = 2 [stringlength=32]; //昵称
string icon = 3 [stringlength=32]; //头像
int32 gender = 4; //性别
string message = 5 [stringlength=256]; //消息内容
int64 targetUid = 6; //目标uid
int32 ret = 7; //结果
ChatChannelType chatChannelType = 8; //频道
int64 sendTime = 9; //发送时间
int64 chatSeq = 10; // 当前消息的seq
int64 clientQuerySeq = 11; // 客户端请求的seq, 客户端不用管, 服务器通信时使用
int64 channelParam = 12; // 频道参数 比如公会id,地区id
int32 iconFrameId = 13;
int32 realmId = 14; //发送者所在区服
int64 enableMsgTime = 15; // 禁言时间
ChatMessageType messageType = 16; //消息类型
int32 level = 17; //等级
string realmName = 18 [stringlength=32];//发送者所在区服名
}
//CS_GAMEMSGID_CHANNEL_CACHE_DATA_REQ
message CSChannelCacheDataReq{
int64 seq = 1; //seq=0请求当前所有离线, seq>0, 请求seq之后的消息
ChatChannelType chatChannelType = 2; //频道
int64 channelParam = 3; // 频道参数 比如公会id,地区id
}
//CS_GAMEMSGID_CHANNEL_CACHE_DATA_RES
message CSChannelCacheDataRes{
ChatChannelType chatChannelType = 1; //频道
int64 channelParam = 2; // 频道参数 比如公会id,地区id
repeated CSChatRes chatCache = 3 [repeatedcount=128];
}
//CS_GAMEMSGID_QUERY_CHAT_DATA_REQ
message CSQueryChatDataReq{
int64 seq = 1; // seq=0请求当前所有离线, seq>0, 请求seq之后的消息, 同时代表seq之前的消息已经保存在本地
}
//CS_GAMEMSGID_QUERY_CHAT_DATA_RES
message CSQueryChatDataRes{
int64 uid = 1;
repeated CSChatRes chatList = 2 [repeatedcount=64]; //离线聊天信息
}
//CS_GAMEMSGID_RECV_PRIVATE_CHAT_NOTIFY
message CSRecvPrivateChatNotify{
}
// CS_GAMEMSGID_SYSNOTICE_LAMP
message CSSysNoticeLamp {
int32 seq = 1; //序列号,一直增长
int64 startTime = 2; //开始时间
int64 endTime = 3; //结束时间
int32 showInterval = 4; //时间间隔
int32 showCount = 5; //显示次数
string content = 6 [stringlength=1024]; //内容
int32 id = 7; //唯一id
int32 envType = 8; // 场景类型 0.全服 1.赛马和牌桌
}
//CS_GAMEMSGID_SYSNOTICE
message CSSysNotice {
int32 seq = 1; //序列号,一直增长,不一定连续
int64 startTime = 2; //开始时间
int64 endTime = 3; //结束时间
string title = 4 [stringlength=256]; //标题
string content = 6 [stringlength=4096]; //内容
string icon = 7 [stringlength=256]; //图标
string pic = 8 [stringlength=256];//图片
int32 jump = 9 ;// 跳转类型 1 抽卡 2 商城 3 活动
// int32 popup = 10;//是否弹窗,暂时无用,后期考虑删除
int32 id = 11; //唯一id
string link = 12 [stringlength=256];//跳转链接
int32 dungeonid = 13; //达到特定关卡触发 0为无限制
int32 sort = 14; //排序依据
bool showtimetext = 15; // 是否显示时间文本
bool IsShow = 16; // 是否显示
bool IsAllSvr = 17; // 是否全服显示
bool aotupop = 18; // 自动弹出
int32 giftbagcustoms = 19; // 领取礼包后通关关卡数
int32 jumpParam = 20 ;// 跳转参数 jump=3 对应活动id
int32 type = 21 ; // 公告类型 拍脸图:0:默认, 1:模板1
repeated string textParams = 22 [stringlength=128,repeatedcount=8]; // 可配置文本列表
int32 pageType = 23 ; // 内容所属页签
}
//CS_GAMEMSGID_SYSNOTICE
message CSSysLoginNotice {
int32 id = 1; //序列号,一直增长,不一定连续
string title = 2 [stringlength=256];//标题
string content = 3[stringlength=4096]; //内容
int32 sort = 4; //排序
int64 startTime = 5; //开始时间
string pic = 6 [stringlength=256];//图片
bool aotupop = 7; // 自动弹出
}
// CS_MSGID_QUERY_LOGINSYSNOTICE_REQ = 19; // 登录界面的公告数据 请求
message CSSysLoginNoticeReq {
int32 seq = 1; //最新序列号,一直增长
string deviceId = 2 [stringlength=64]; //设备id
string language = 3 [stringlength=64]; // 客户端语言
}
// CS_MSGID_QUERY_LOGINSYSNOTICE_RES = 20; // 登录界面的公告数据 回应
message CSSysLoginNoticeRes {
repeated CSSysLoginNotice NoticeList = 1 [repeatedcount=18]; //公告列表
}
//CS_GAMEMSGID_QUERY_SYSNOTICE_REQ = 1064; //公告
message CSQuerySysNoticeReq {
int32 seq = 1; //最新序列号,一直增长
string lang = 2 [stringlength=16]; //语言
}
//CS_GAMEMSGID_QUERY_SYSNOTICE_RES = 1065; //客户端拉取公告
message CSQuerySysNoticeRes {
int32 ret = 1;
int32 lastSeq = 2; // 最新序列号
repeated CSSysNotice popupList = 3 [repeatedcount=32]; //进入游戏弹出
repeated CSSysNotice clickList = 4 [repeatedcount=32]; //点击公告弹出
}
//公告类型
enum NoticeType{
//进入游戏弹出
Popup=0;
//点击公告弹出
Click=1;
}
//CS_GAMEMSGID_QUERY_UPSYSNOTICE = 1199; //ChatServer推送单条公告
message CSQuerySysUpNoticeRes {
NoticeType noticetype = 1;
CSSysNotice uppotice = 2 ;
}
// CS_GAMEMSGID_CHANGE_ICON_FRAME_REQ = 1069; //换头像框
message CSChangeIconFrameReq{
int32 newIconFrameId = 1;
}
// CS_GAMEMSGID_CHANGE_ICON_FRAME_RES = 1070; //换头像框
message CSChangeIconFrameRes{
CSErrCode ret = 1;
int32 newIconFrameId = 2;
}
//CS_GAMEMSGID_COMMON_DYNAMIC_REQ
message CSCommonDynamicReq{
string cmd = 1 [stringlength=32]; //消息id
repeated string params = 2 [stringlength=64,repeatedcount=16]; //参数
}
//CS_GAMEMSGID_COMMON_DYNAMIC_RES
message CSCommonDynamicRes{
int32 ret = 1;
string cmd = 2 [stringlength=32];
repeated string params = 3 [stringlength=64,repeatedcount=16]; //参数
}
message DBRankPlayerInfo{
int64 uid = 1;
int32 rank = 2; //名次 (排序依据,相同分数重排时不改变老的顺序)
string nick = 3 [stringlength=32];
string icon = 4 [stringlength=32];
int32 gender = 5;
int32 level = 6;
int64 score = 7;
int64 time = 8;
int32 iconFrameId = 9;
int32 param = 10;
int32 skin = 11;
int32 weapon1 = 12;
int64 power = 13;
int32 wingskinId = 14; //穿戴的皮肤id
int32 wingrefitId = 15; //穿戴的皮肤所对应的等级id
int32 wingwearId = 17;
}
message DBActRankTopPlayerInfo{
int64 uid = 1;
int32 rank = 2; //名次 (排序依据,相同分数根据时间排序顺序)
string nick = 3 [stringlength=32];
string icon = 4 [stringlength=32];
int32 gender = 5;
int32 level = 6;
int64 score = 7;
int64 time = 8;
int32 title = 10;
repeated DBEquipment wearEquip = 13 [repeatedcount = 12]; // 装备 pdl
repeated IDValue32 showEquip = 14 [repeatedcount = 6]; // 装备幻化 pdl
}
//活动条件触发榜
enum ActRankType{
ActRankType_None = 0;
ActRankType_MainlandLevel = 1; //闯关等级
ActRankType_Size = 2; //
}
//第一名的信息
message RankTopPlayerInfo{
int64 uid = 1;
int32 rankId = 2; //排行榜id
string nick = 3 [stringlength=32];
string icon = 4 [stringlength=32];
int32 gender = 5;
int32 level = 6;
int64 score = 7;
int64 time = 8;
int32 canGetAward = 9; // 0 不可领取 1 可领取 2 领取成功
int32 iconFrameId = 10;
}
//上榜依据
enum RankReasonType
{
RankReasonType_None = 0;
RankReasonType_MainChapter = 1; //主线章节
RankReasonType_ArenaStarRank = 15; //星球竞技场段位
}
//CS_GAMEMSGID_QUERY_RANK_LIST_REQ
message CSQueryRankListReq{
int32 rankId = 1; //排行榜id
int32 startPos = 2; //从第几名开始 从第一名开始请求 res的selfRank才是有效的
int32 endPos = 3; //第几名结束
int32 realmId = 4; //客户端不填
int32 bigRealmId = 5; //客户端不填
}
//CS_GAMEMSGID_QUERY_RANK_LIST_RES
message CSQueryRankListRes{
int32 ret = 1;
int32 rankId = 2; //排行榜id
int32 selfRank = 3; //自己的排名
int64 selfScore = 4; //自己的分数
int32 playerCount = 5; //玩家数量
repeated DBRankPlayerInfo rankList = 6 [repeatedcount=100];
int32 hideRankTime = 7; // 当>0时, 超过该时间后隐藏排行榜
int32 nextUpdateRankTime = 8; // 下一次更新排名的时间
int32 lastRank = 9; //上一届排名
bool getLastReward = 10;//是否领取了上一届奖励
int32 selfParam= 11; //自己的
}
//CS_GAMEMSGID_QUERY_RANK_SELF_REQ
message CSQueryRankSelfReq{
int32 rankId = 1; //排行榜id
int32 realmId = 2; //客户端不填
int32 bigRealmId = 3; //客户端不填
}
//CS_GAMEMSGID_QUERY_RANK_SELF_RES
message CSQueryRankSelfRes{
int32 ret = 1;
int32 rankId = 2; //排行榜id
DBRankPlayerInfo selfInfo = 3;
}
//CS_GAMEMSGID_QUERY_RANK_DETAIL_REQ
message CSQueryRankDetailReq{
int32 rankId = 1; //排行榜id
int64 uid = 2;
}
//CS_GAMEMSGID_QUERY_RANK_DETAIL_RES
message CSQueryRankDetailRes{
int32 ret = 1;
int32 rankId = 2; //排行榜id
int64 uid = 3;
DBRankPlayerInfo detailInfo = 4;
}
//CS_GAMEMSGID_QUERY_RANK_TOP_REQ
message CSQueryRankTopReq{
int32 mainType = 1; //1:实时榜 2:记录榜
int32 subType = 2; //1.人族积分记录 2.妖族积分记录 3.神族积分记录 4.主线通关记录 5.深渊通关记录
int32 realmId = 3;
int32 bigRealmId = 4;
}
//CS_GAMEMSGID_QUERY_RANK_TOP_RES
message CSQueryRankTopRes{
int32 ret = 1;
int32 mainType = 2;
int32 subType = 3;
repeated RankTopPlayerInfo topInfo = 4[repeatedcount=100];
}
//CS_GAMEMSGID_NOTICE_RANK_CHANGE = 1139
message CSNoticeRankChange{
int32 realmId = 1; //客户端无需处理
int32 rankId = 2;
}
//CS_GAMEMSGID_UPDATE_SELF_RANKSCORE = 1140
message CSUpdateSelfScore{
int32 rankId = 1;
int64 selfScore = 2;
}
//CS_GAMEMSGID_UPDATE_WXRANK = 1144
message CSUpdateWXRank{
int64 uid = 1;
int32 rankId = 2;
int64 score = 3;
int32 usedTime = 4;
int64 time = 5;
}
//CS_GAMEMSGID_CLI_REPORT_BILL_REQ
message CSCliReportBillReq{
string reportStr = 1 [stringlength=512];
string reportType = 2 [stringlength=32];
}
//CS_GAMEMSGID_USE_ITEM_REQ
message CSUseItemReq{
int32 itemID = 1 ;
int32 useCount = 2; //使用数量
int32 chooseItemIndex = 3; //选择一ID
}
//CS_GAMEMSGID_USE_ITEM_RES
message CSUseItemRes{
CSErrCode ret = 1;
int32 itemID = 2 ;
int32 useCount = 3; //使用数量
int32 chooseItemIndex = 4; //选择一ID
repeated TypeIDValueString getItems = 5 [repeatedcount = 128]; //物品使用掉落的物品,例如开宝箱
}
//CS_GAMEMSGID_SET_ITEM_NEWGET_REQ
message CSSetItemNewgetReq{
int32 itemID = 1 ;
}
//CS_GAMEMSGID_SET_ITEM_NEWGET_RES
message CSSetItemNewgetRes{
CSErrCode ret = 1;
int32 itemID = 2 ;
}
//CS_GAMEMSGID_ADID_REPORT_REQ
message CSAdidReportReq{
string adid = 1 [stringlength=64]; //adid idfa
}
//CS_GAMEMSGID_FIREBASE_ID_REPORT_REQ
message CSFirebaseIdReportReq{
string id = 1 [stringlength=64];
}
//CS_GAMEMSGID_FIREBASE_SUBSCRIBE_TOPIC
message CSFirebaseSubscribeTopic{
string subTopic = 1 [stringlength=32]; //订阅
string unsubTopic = 2 [stringlength=32];//取消订阅
}
//CS_GAMEMSGID_SAVE_CLIENT_DATA_REQ
message CSSaveClientDataReq{
string clientData = 1 [stringlength=64];
}
//CS_GAMEMSGID_SAVE_CLIENT_DATA_RES
message CSSaveClientDataRes{
string clientData = 1 [stringlength=64];
}
//CS_GAMEMSGID_QUERY_OTHER_DETAIL_REQ
message CSQueryOtherDetailReq{
int64 targetUid = 1;
}
//116001 对方设置隐私,无法获取
//CS_GAMEMSGID_QUERY_OTHER_DETAIL_RES
message CSQueryOtherDetailRes{
int64 targetUid = 1;
int32 ret = 2;
int32 hideInfo = 3; //是否隐藏了信息
string nick = 4 [stringlength=32];
string icon = 5 [stringlength=32];
int64 chip = 6;
int64 diamond = 7;
int32 level = 8;
int32 vipLevel = 9; // vip等级
int32 totalRound = 10; // 总局数
int32 totalWin = 11; // 总赢局
int32 exp = 13; //经验
int32 gender = 14;
string PersonalizedSignature = 15 [stringlength=32];
int32 iconFrameId = 16;
}
//CS_GAMEMSGID_TIP_OFF_PLAYER_REQ
message CSTipOffPlayerReq{
int64 targetUid = 1;
string reason = 2 [stringlength=32];
}
//CS_GAMEMSGID_GAG_CHAT_NOTIFY
message CSGagChatNotify{
int64 gagEndTime = 1; //禁言到期时间
int32 enableType = 2; // 禁言原因
string enableStr = 3 [stringlength = 256]; // 其他禁言原因
string opSource = 4 [stringlength=128]; // 自定义操作来源
}
//CS_GAMEMSGID_HIDE_MY_INFO_REQ
message CSHideMyInfoReq{
int32 hide = 1;
}
//CS_GAMEMSGID_HIDE_MY_INFO_RES
message CSHideMyInfoRes{
int32 hide = 1;
}
//CS_GAMEMSGID_PAY_PLAYER_PAYINFO_CHG_NOTIFY
message CSPayPlayerPayinfoChgNotify{
DBRolePayData payData = 1; //最新支付数据,全量
}
//CS_GAMEMSGID_POWER_CHANGE_NOTIFY
message CsPowerChangeNotify{
int64 power = 1;
int32 fromCli = 2;
int64 change = 3; //战力变化值
}
//CS_GAMEMSGID_POWER_CLI_REQ
message CsPowerCliReq {
int32 seq = 1;
int32 boxChange = 2;
}
//CS_GAMEMSGID_SET_LANGUAGE_REQ = 1189; //设置语言
message CSSetLanguageReq{
string lang = 1 [stringlength=32];
}
//CS_GAMEMSGID_SET_LANGUAGE_RES = 1190; //设置语言
message CSSetLanguageRes{
string lang = 1 [stringlength=32];
}
//CS_GAMEMSGID_CLIENT_HOT_PATCH_FILE_PUSH
message CSClientHotPatchFilePush{
string patchFileContent = 1 [stringlength=8192]; //补丁文件
bytes zipFileContent = 2 [repeatedcount=4096]; //压缩的补丁文件
string md5 = 3 [stringlength=32];//服务器的md5
}
//CS_GAMEMSGID_REPORT_INVITE_ME_FBUSERID
message CSReportInviteMeFbuserid{
string inviteCode = 1 [stringlength=32]; //邀请我玩家的邀请码
}
//CS_GAMEMSGID_REPORT_INVITE_ME_FBUSERID_RES
message CSReportInviteMeFbuseridRes{
string inviteCode = 1 [stringlength=32]; //邀请我玩家的邀请码
int64 uid = 2; //对应游戏里的uid
int32 ret = 3; //成功还是失败
int64 rewardChip = 4; //奖励
}
//位标示意义
enum ClientBitFlagType
{
ClientBitFlagType_None = 0;
ClientBitFlagType_NewMatchTip = 1;
}
//CS_GAMEMSGID_SAVE_CLIENT_BIT_FLAG_REQ
message CSSaveClientBitFlagReq{
uint64 clientBitFlag = 1;
}
//CS_GAMEMSGID_SAVE_CLIENT_BIT_FLAG_RES
message CSSaveClientBitFlagRes{
uint64 clientBitFlag = 1;
}
// CS_GAMEMSGID_QUERY_FRIEND_STATUS_REQ //这里有误导,这里看代码逻辑查的是任意玩家的
message CSQueryFriendStatusReq {
repeated int64 uids = 1 [repeatedcount=32];
}
message CSFriendOneStatus{
int64 uid = 1;
int32 status = 2; // 0 不在线, 1 牌桌, 2 大厅
}
// CS_GAMEMSGID_QUERY_FRIEND_STATUS_RES
message CSQueryFriendStatusRes {
repeated CSFriendOneStatus friends = 1 [repeatedcount=32]; //
}
// CS_GAMEMSGID_REPORT_CHEAT_REQ
message CSReportCheatReq {
int64 reporter = 1; // 举报人
int64 cheater = 2; // 被举报人
}
// CS_GAMEMSGID_REPORT_CHEAT_RES
message CSReportCheatRes {
int32 ret = 1;
int64 reporter = 2; // 举报人
int64 cheater = 3; // 被举报人
}
//CS_GAMEMSGID_QUERY_BAG_CHANGE_HISTORY_LIST_REQ
message CSQueryBagChangeHistoryListReq{
}
//CS_GAMEMSGID_QUERY_BAG_CHANGE_HISTORY_LIST_RES
message CSQueryBagChangeHistoryListRes{
repeated DBBagChangeRecord DBBagChangeRecordList = 1 [repeatedcount=202];//金钱钻石变化
}
enum LevelType {
RoleLevel = 0;
VipLevel = 1;
}
// CS_GAMEMSGID_SYNC_LEVEL_INFO
message CSSyncLevelInfo {
LevelType levelType = 1;
int32 level = 2;
int32 exp = 3;
}
//CS_GAMEMSGID_MAIL_SEND_TO_PLAYER_REQ = 1241; //发送邮件
message CSMailSendToPlayerReq{
int64 targetUid = 1;
int64 chip = 2;
string title = 3 [stringlength=64];
string content = 4 [stringlength=1024];
int32 shopItemId = 5;//商店物品,买了送
}
//CS_GAMEMSGID_MAIL_SEND_TO_PLAYER_RES = 1242; //操作邮件
message CSMailSendToPlayerRes{
int32 ret = 1;
int64 targetUid = 2;
int64 chip = 3;
string title = 4 [stringlength=64];
string content = 5 [stringlength=1024];
int32 shopItemId = 6;//商店物品,买了送
}
// CS_GAMEMSGID_ROLEBASE_CHG_REQ
message CSRolebaseChgReq {
string nick = 1 [stringlength=32];
int32 gender = 2;
}
// CS_GAMEMSGID_ROLEBASE_CHG_RES
message CSRolebaseChgRes {
int32 ret = 1;
string nick = 2 [stringlength=32];
int32 gender = 3;
}
// 按位
enum RealmState {
Close = 0; // 停服维护
Open = 1; // 正常
Hot = 2;
New = 4; // 新服, 新加状态放到最上面
Full = 8; //注册已满
}
message CSRealmBrief {
int32 realmId = 1;
string realmName = 2 [stringlength=32];
int32 state = 3; // 0 关闭 1 新开 2 正常 3 火爆
string realmBdcName = 4 [stringlength=32]; // 发送给客户端时不用填
int32 openTime = 5; // 首次开服时间
int32 WorldId = 6; // WorldId
string VisibleOnlyCliVersion = 7 [stringlength=32]; //可见版本
int32 visibleOnlyWhiteList = 8; //1表示仅对白名单ip可见
int32 visibleTime = 10; // 对外可见时间
int32 bigRealmId = 11; //大区id
string ip = 12 [stringlength=16]; //服务器填,客户端不用管
string areaName = 13 [stringlength=16];//大区名称,东南亚大区 (缩写SEA) 欧洲大区 (缩写EUR) 美洲大区 (缩写America?)
int32 onlinePlayer = 14; // 服务器填,客户端不用管
int32 timeZone = 15; // 服务器时区
int32 logicWorldId = 16; //逻辑world,不同逻辑world的realm之间是隔离的
int32 showSeq = 17;
int32 regMax = 18;
}
message CSRoleBrief {
int64 uid = 1;
string nick = 2 [stringlength=32];
string icon = 3 [stringlength=32];
int32 level = 4;
int32 realmId = 5;
int32 iconFrameId = 6;
int64 lastLoginTime = 7;
}
//CS_GAMEMSGID_SET_PERSONALIZED_SIGNATURE_REQ
message CSSetPersonalizedSignatureReq{
string sign = 1 [stringlength=32];
}
//CS_GAMEMSGID_SET_PERSONALIZED_SIGNATURE_RES
message CSSetPersonalizedSignatureRes{
string sign = 1 [stringlength=32];
int32 ret = 2;
}
enum CSBattleType
{
CS_BATTLETYPE_NONE = 0;
CS_BATTLETYPE_MAINLAND = 1;
}
enum CSBattleResult
{
CSBattleResult_None = 0;
CSBattleResult_Succ = 1;
CSBattleResult_Failed = 2;
}
message CSBattleRoleInfo
{
DBRoleBase roleBase = 1;
uint32 gameServerId = 2;
}
enum RaceType
{
RaceType_None = 0;
RaceType_Ren = 1; //人族
RaceType_Shen = 2; //神族
RaceType_Yao = 3; //妖族
RaceType_MainGod = 4; //宙神
RaceType_Void = 5; //虚空
RaceType_Max = 6; //最大值
}
message ILMainlandDrop
{
int32 count = 1; //不包含boss掉落
repeated TypeIDValue32 commDrop = 2 [repeatedcount = 16];
int32 bossWorthLevel = 3;
TypeIDValue32 bossDrop = 4;
}
//调整这个结构的时候需要考虑关联的结构体大小能超过64K
// IL 和 SVR 通用的数据,首字母大写,方便客户端赋值
message CSBattleJsonInput{
int32 Frame = 1;
int32 Type = 2;
repeated int32 Params = 3 [repeatedcount = 8];
}
enum BattleEventType{
BattleEventType_None = 0;
BattleEventType_Attack = 1; // 攻击
BattleEventType_Heal = 2; // 治疗
BattleEventType_Revive = 3; // 复活
BattleEventType_AtkBack = 4; // 反击
BattleEventType_RemoveStun = 5; // 解除眩晕
BattleEventType_RoundChg = 6; // 回合变更
BattleEventType_BattleEnd = 7;// 战斗结束
BattleEventType_Buff = 8;// 添加buff
BattleEventType_RemoveBuff = 9;// 移除buff
BattleEventType_UpdateBuffOverTime = 10;// 更新buff时间
BattleEventType_DmgBack = 11; // 反弹伤害
BattleEventType_SetHP = 12; // 设置血条,damage为hp,heal为maxHp
}
enum BattleEventBit{
BattleEventBit_None = 0;
BattleEventBit_Stun = 1; // 眩晕
BattleEventBit_Crit = 2; // 暴击
BattleEventBit_Dodge = 3; // 闪避
BattleEventBit_Combo = 4; // 连击
BattleEventBit_Steal = 5; // 吸血
BattleEventBit_BeAtkBack = 6; // 被反击
BattleEventBit_BeCombo = 7; // 被连击
BattleEventBit_MulTarget = 8; // 多目标
BattleEventBit_MulStage = 9; // 多阶段
BattleEventBit_Dead = 10; // 死亡
}
message BattleEventLogOne{
int32 casterId = 1;
int32 targetId = 2;
BattleEventType eventType = 3;
uint32 resultBit = 4;
int64 damage = 5;
int64 heal = 6;
int32 spellId = 7;
int32 effectIdx = 8;
int64 RandomNum = 10001; // 战斗随机数 测试日志用的 上线删除
}
// 战斗日志
message BattleEventLog{
repeated BattleEventLogOne logs = 1 [repeatedcount = 512];
}
message BattleInfoAll{
CSBattleType type = 1;
uint64 battleId = 2;
int32 mainlandId = 3;
int32 mainlandType = 4;
BattleRoleInfo roleA = 5;
BattleRoleInfo roleB = 6;
BattleSideInfo herosA = 7;
BattleSideInfo herosB = 8;
BattleEventLog battleLog = 9;
CSBattleResult battleResult = 10;
int32 smash = 11; // 一击必杀
int32 invincible = 12; // 无敌
int32 overRound = 13;
}
message CacheBattleInfoAll{
int32 nowIndex = 1;
repeated BattleInfoAll infoList = 2[repeatedcount = 8];
}
//IL 和 SVR 通用的数据,首字母大写,方便客户端赋值
message FightHero{
int64 SerialNum = 1;
int64 DescID = 2;
int64 ObjId = 3;
int64 CurrHp = 4;
int64 MaxHp = 5;
int32 Level = 6;
int32 Star = 7;
int32 Side = 8;
int64 MaxEnergy = 9;
int64 CurrEnergy = 10;
int32 LineupPos = 11;
int32 HeroType = 12;
int64 InitHpMax = 13;
int32 raceIconLevel = 14;
int32 WeaponLevel = 15;
int32 ManualCastCount = 16; //手动释放大招次数
int32 SignPos = 17;
int32 SuperEvolve = 18;
int32 SuperEvolveLevel = 19;
int32 skinDescId = 20;
}
message FightHeroSpell{
int32 SpellId = 1;
int32 SpellLv = 2;
int32 CastCount = 3;
int64 TotalEffectTarget = 4;
int64 TotalDamage = 5;
}
message KillOneInfo{
int32 KillEnemy = 1; //descID
int32 KillObjID = 2; //
int32 NowFrame = 3; //帧
int32 IsCommon = 4; //普通出战英雄
}
//IL 和 SVR 通用的数据,首字母大写,方便客户端赋值
message OneFightInfo{
FightHero Hero = 1;
int64 Shield = 3; //添加的护盾值
int64 Damage = 4; //造成伤害
int64 Cure = 5; //治疗
int64 Hurt = 6; //承受伤害
repeated FightHeroSpell SpellStat = 7 [repeatedcount = 6];
int64 Power = 8; //战力
repeated KillOneInfo KillInfo = 9 [repeatedcount = 8];
int64 MaxDamage = 10;
int32 wave = 11;
}
//IL 和 SVR 通用的数据,首字母大写,方便客户端赋值
message BattleStatistics
{
int32 Result = 1;
int32 KillMonsterNum = 2;
int64 TotalDamageHp = 3;
int64 TotalMonsterHp = 4;
int32 FinishCondition = 5;
int32 NoWaitHeroDeath = 6;
//repeated int32 Treasures = 7 [repeatedcount = 4];
//repeated int32 StarIndexs = 8 [repeatedcount = 4];
repeated OneFightInfo HerosInfo = 9 [repeatedcount = 16];
int32 LogicFightTime = 10;
int32 IsAutoFight = 11; //结束时自动战斗是否开启
int32 DungeonEventId = 12;
int32 IsGMCommand = 13; //是不是通过GM命令进的命令进的
int32 TotalFrame = 14; //战斗消耗帧数
int32 ChessEventId = 15;
repeated IDValue64Up SpecialList = 16 [repeatedcount = 32]; //特殊数据统计
int32 CampaignMapId = 17;
int32 DungeonTaskFailed = 18;
int32 DungeonHeroSide = 19;
int32 DungeonHeroDescId = 20;
int32 DungeonHeroLinepos = 21;
int32 DungeonSpecialHeroHp = 22;
int32 SuccessEggId = 23; //成功触发彩蛋id
int64 TotalCpuTime = 24;
int64 TotalDamageBossHp = 25; //单独统计boss
int64 TotalBossHp = 26;//单独统计boss
int32 RealInputCount = 27; //实际输入数量
int64 CurBossHp = 28; //当前boss血量
int32 TotalStarState = 29; //几颗星
int64 killScore = 30;//杀怪积分
int32 battleVersion = 31; //表格的版本号
int32 staticBattleVersion = 32; //静态的战斗版本号,用于区分客户端的dll是不是错误的
}
//战斗英雄简要信息
message BattleHeroBriefInfo{
int32 DescId = 1;
int32 Star = 2;
int32 Level = 3;
int32 RaceIconLevel = 4; //种族图标等级
int32 IsDead = 5; //是否死亡 0存活 1死亡
int64 Damage = 6; //造成伤害
int64 Cure = 7; //治疗
int64 Hurt = 8; //承受伤害
int64 Power = 9; //战力
int32 SerialNum = 10;
int32 HeroType = 11;
int32 SuperEvolve = 12;
int32 SuperEvolveLevel = 13;
int32 skinDescId = 14;
}
//指挥官简要信息
message BattleCommanderBriefInfo
{
int32 DescId = 1;
int32 Level = 2;
}
//宝物简要信息
message BattleTreasureBriefInfo
{
repeated int32 treasureList = 1 [repeatedcount=8]; //上阵宝物
repeated IDValue32 idLevel = 2 [repeatedcount = 8]; //上阵宝物
}
//战斗角色简要信息
message BattleRoleBriefInfo{
int64 Uid = 1;
string Nick = 2 [stringlength=32]; //昵称
string Icon = 3 [stringlength=32]; //头像
int32 Level = 4; //等级
int32 IconFrameId = 5; //头像框
int64 TeamPower = 6; //上阵战力
repeated BattleHeroBriefInfo HeroList = 7 [repeatedcount=6]; //上阵英雄列表
BattleCommanderBriefInfo commnander = 8;
BattleTreasureBriefInfo treasure = 9;
string RealmName = 10 [stringlength=32];
int32 realmId = 11;
}
message BattleBriefStatistics
{
uint64 BattleId = 1; //战斗id,唯一
int64 BattleVersion = 2; //战斗逻辑版本号,相等时才能回放
int32 MainlandId = 3;
int32 Result = 4;
BattleRoleBriefInfo Attacker = 5;
BattleRoleBriefInfo Defender = 6;
int64 TotalDamageHp = 7; //造成总伤害
int64 TotalDamageBossHp = 8; //造成Boss伤害
int32 TotalFrame = 9;
}
message BattleRoleInfo
{
DBRoleBase roleBase = 1;
uint32 gameServerId = 2;
int32 iconFrameId = 3; //头像框
int32 realmId = 4;
}
// 表现信息
message HeroShowInfo {
int32 objId = 1;
int32 descId = 2;
int64 maxHp = 3;
int32 pos = 4; // 站位
repeated IDValue32 showEquip = 7 [repeatedcount = 6]; // 装备幻化 pdl
}
// 英雄信息, 将英雄相关数据打包在一起方便统一修改, 结构体中的字段由使用双方根据实际需求自行填写
message HeroInfo
{
DBHero dbhero = 1; // DB英雄数据
HeroPropView propView = 5; // 面板显示属性
DbTalentData talent = 2; //天赋
DbWingData win = 3;
}
message SimpleRobot{
HeroInfo heroInfo = 1;
DBRoleBase roleBase = 2;
int32 randNameIdx = 3; //机器人随机名索引
}
message SimpleRobotList{
repeated SimpleRobot list = 1[repeatedcount = 50];
}
message SimpleRobotPool{
repeated SimpleRobotList pool = 1[repeatedcount = 120];
}
//阵容简要信息
message FightHeroInfo
{
int32 descId = 1;
int32 level = 2;
int32 star = 3;
int32 blessLevel = 4;
int32 raceIconLevel = 5;
int32 SuperEvolve = 6;
int32 SuperEvolveLevel = 7;
int32 skinDescId = 8; //穿戴的皮肤
}
message FightCommander{
int32 descId = 1;
int32 level = 2;
}
message FightLineup{
FightCommander commander = 1;
repeated FightHeroInfo heroList = 2[repeatedcount=6]; //上阵英雄星级和等级
}
message BattleSideInfo
{
repeated HeroInfo list = 1 [repeatedcount=2];
//int32 lineupPosMode = 2; //0.按原方式变化 1.站位不变 策划那边有需求 某一排只有一个人的时候也能不是站在中间
}
message CSSpellCastData{
uint32 casterId = 1;
uint32 selectTargetId = 2;
int32 spellId = 3; // 释放技能id,包括buffId,spell和buff的id会分段
int32 spellShowId = 4; // 释放技能的表现id
int32 triggerSpellId = 5; // 触发当前spell或buff释放的另一个spell/BuffId
int32 triggerSpellShowId = 6;
int32 seq = 7; // 序列号
int32 createSpellId = 8; // 目前只有buff会填该字段
int32 createSpellShowId = 9;
int32 spellState = 10; // 释放技能的特殊状态
}
//-------------------------hero op begin---------------------------------
//----------------------------hero op end-----------------------------------
//CS_GAMEMSGID_WAITPLAYER_REMAINTIME_NOTIFY = 1700; //通知game服务器通知客户端等待连接还剩多长时间
message CSNotifyWaitPlayerRemainTime{
int64 userId = 1;
int32 beforeCount = 2; //前面有多少玩家在等待
int64 playerSessionID = 3;
}
//--------------------------------Equipment start---------------------------------------------------
//CS_GAMEMSGID_EXEQUIPTOEQUIP_NOTIFY = 1804; //装备转换通知
message ExEquipToEquipNotify {
DBExEquipment exEquip = 1;
DBEquipment equip = 2;
}
//-----------------------------Equipment end-----------------------------------------------
message CSBattleReplay{
int64 recordTime = 1;
int64 battleVersion = 2;
BattleInfoAll battleInfoAll = 3;
BattleBriefStatistics briefStats = 4;
repeated CSBattleJsonInput battleInput = 5 [repeatedcount = 2]; //战斗输入数据
string RealmName = 6 [stringlength=32];
}
//------------------------------mainland start ----------------------------------------
enum MainlandType
{
MainlandType_Min = 0;
MainlandType_Adventure = 1;
MainlandType_WildBoss = 2;
MainlandType_KNightTrain = 1004; //骑士团训练
}
message CSHeroFightInfo{
int32 heroSerialNum = 1;
int32 heroDescId = 2;
int32 currHp = 3;
int32 maxHp = 4;
repeated int32 killEnemy = 5 [repeatedcount = 16]; // 敌人的descId
uint32 heroObjId = 6;
repeated int32 killEnemyObjID = 7 [repeatedcount = 16]; // 敌人的objID。 和 KillEnemy的数据一一对应
}
message CSBattleOpInfo{
uint32 CasterObjId = 1;
uint32 TargetObjId = 2;
int32 SpellId = 3;
int32 ActionSeq = 4;
}
enum GoodsChangeType
{
GoodsChangeType_None = 0;
GoodsChangeType_Add = 1;
GoodsChangeType_Delete = 2;
GoodsChangeType_PropChange = 3;
}
//-----------------------------GoodsNotify begin-------------------------------------
//普通物品变化信息
message CSItemChgInfo {
int32 uniqueID = 1; //唯一id,每个物品有唯一id
string id = 2 [stringlength = 64];
int64 count = 3; //最新值
int64 chgCount = 4; //改变值
int32 type = 5; // type, id, value
int32 iid = 6;
}
//卡牌变化信息(卡牌是不可叠加数据,这里数量就不用了)
message CSExGoodsChangeInfo{
int32 serialNum = 1; //改变的唯一号(卡牌,装备等)
int32 descId = 2; //读表ID
repeated IDValue32 attrTypeValue =3 [repeatedcount=64] ; //对应属性变化值
repeated TypeIDValue32 TypeIDValue =4 [repeatedcount=64]; //对应属性变化值
GoodsType goodstype = 5; //物品类型,英雄卡牌 装备等
GoodsChangeType changeType = 6; //变化类型
int32 count = 7;
int32 param = 8;
}
//物品统一变化协议修改,打算干掉 CSPlayerItemChg 和 CSHeroBagChg
//修改物品变化的统一操作
message AllGoodsChange{
repeated CSItemChgInfo items = 1 [repeatedcount = 128]; //普通物品
repeated CSExGoodsChangeInfo exGoods = 2 [repeatedcount = 512];//其他物品(包含卡牌,装备,以及后续其他等)
}
//CS_GAMEMSGID_PLAYER_GOODS_CHG_NOTIFY = 1900; //玩家物品变化通知
message CSPlayerGoodsChgNotify{
repeated CSItemChgInfo chgItems = 1 [repeatedcount = 64];
string chgReason = 2 [stringlength=32];
int32 reason = 3;
}
//CS_GAMEMSGID_GOODS_GET_PUSH = 1901; //
message CSGoodsGetPush{
repeated CSItemChgInfo items = 1 [repeatedcount = 64];
}
//-----------------------------GoodsNotify end-------------------------------------
//-----------------------------MarketShop begin
//CS_GAMEMSGID_MARKET_SHOP_BUY_GOODS_REQ = 1638; //玩家请求购买商店物品 请求
message CSMarketShopBuyGoodsReq{
int32 shopId = 1;
int32 buyTimes = 2; //够买次数
int32 goodsId = 3; //购买该商店的哪个索引的物品
}
//CS_GAMEMSGID_MARKET_SHOP_BUY_GOODS_RES = 1639; //玩家请求购买商店物品 应答
message CSMarketShopBuyGoodsRes{
OneGridGoods gridGoods = 1; //某个格子的物品数据
CSErrCode ret = 2;
int32 shopId = 3;
int32 buyTimes = 4;
repeated CSItemChgInfo rewards = 5 [repeatedcount = 8]; //具体得到的内容
}
//CS_GAMEMSGID_MARKET_SHOP_REFRESH_REQ = 1640; //玩家获取某个商./店数据或刷新某个商店数据请求
message CSMarketShopRefreshReq{
int32 shopId = 1;
bool isNeedRefresh = 2; //是否需要刷新(刷新是要扣钱的)
}
//CS_GAMEMSGID_MARKET_SHOP_REFRESH_RES = 1641; //玩家获取某个商店数据或刷新某个商店数据应答
message CSMarketShopRefreshRes{
OneShopData shopData = 1; //某个商店的物品数据
CSErrCode ret = 2;
}
// 效果类型
enum EffectType
{
EffectType_None = 0; // 没有效果,只为了选取目标添加buff
EffectType_Add_Equipment_Prop = 1; // 装备添加属性
EffectType_Equipment_Base_Prop = 2; // 装备添加基础属性
EffectType_Add_Prop = 3; // 添加属性
EffectType_Heal = 4; // 回复生命
EffectType_Convert_Prop = 5; // 属性转化
EffectType_AttBack_At_Stun = 6; // 眩晕时可以反击
EffectType_Attack_Extra_Target = 7; // 攻击额外目标
EffectType_DamIgnore = 8; // 忽视百分比外的伤害
EffectType_Dot = 9; // 定时掉血
EffectType_AddBuff = 10; // 给敌人上buff
EffectType_DamUp = 11; // 提高伤害万分比(全员)
EffectType_Hightest_Prop_Up = 12; // 最高额外属性提升
EffectType_Hightest_Prop_Add_By_Lowest = 13; // 最高属性依据最低额外属性提升
EffectType_Averge_UnExtra_Prop = 14; // 最高额外属性提升
EffectType_UnExtra_Prop_Up = 15; // 所有忽视属性提升
EffectType_AddProp_ByCurrent = 16; // 按当前值增加属性值
EffectType_Relive = 17; // 复活
EffectType_Heal_Rate = 18; // 回复百分比血量
EffectType_Add_Highest_Prop = 19; // 提高
EffectType_UnHeal = 20; // 降低治疗效果 直接作用于结果
EffectType_RoundDot = 22; // 回合掉血万分比
EffectType_Reflect = 23; // 增加反弹伤害万分比属性
EffectType_Attack_Target_Chg = 24; // 攻击目标修改
EffectType_Target_CurHp_Damage = 25; // 额外造成敌人当前生命伤害万分比
EffectType_Self_HpMax_Damage = 26; // 额外造成自身生命上限伤害万分比
EffectType_Update_Buff_Time = 27; // 更新目标buff的结束时间
EffectType_Pursuit = 28; // 对敌人额外追击额外伤害
EffectType_Reply_RateHp = 29; // 回复目标自身生命上限万分比
EffectType_Player_DamUp = 30; // 提高对玩家伤害万分比(过滤伙伴)
EffectType_DamageDown = 31; // 提高减伤万分比(全员)
EffectType_Player_DamageDown = 32; // 提高对玩家减伤万分比(过滤伙伴)
EffectType_Pursuit_TotalDamage = 33; // 对敌人额外追击汇总伤害(普攻伤害 + 额外伤害汇总)
EffectType_UnExtra_To_MaxProp2 = 34; //所有忽视属性变成最高的2级属性
EffectType_Prop2_Multiply = 35; //二级属性乘以万分比倍数
EffectType_E36 = 36;
EffectType_E37 = 37;
EffectType_E38 = 38;
EffectType_E39 = 39;
EffectType_E40 = 40;
EffectType_E41 = 41;
EffectType_E42 = 42;
EffectType_E43 = 43;
EffectType_E44 = 44;
EffectType_E45 = 45;
EffectType_E46 = 46;
EffectType_E47 = 47;
EffectType_E48 = 48;
EffectType_E49 = 49;
EffectType_E50 = 50;
EffectType_E51 = 51;
EffectType_E52 = 52;
EffectType_E53 = 53;
EffectType_E54 = 54;
EffectType_E55 = 55;
EffectType_E56 = 56;
EffectType_E57 = 57;
EffectType_E58 = 58;
EffectType_E59 = 59;
EffectType_E60 = 60;
EffectType_E61 = 61;
EffectType_E62 = 62;
EffectType_E63 = 63;
EffectType_E64 = 64;
EffectType_E65 = 65;
EffectType_Max = 66;
}
enum EffectEvent
{
EffectEvent_Battle_Start = 0; // 战斗开始
EffectEvent_Hit = 1; // 命中
EffectEvent_Be_Hit = 2; // 被命中
EffectEvent_Round_Start = 3; // 回合开始
EffectEvent_Un_Crit = 4; // 命中未暴击
EffectEvent_Combo = 5; // 连击
EffectEvent_Stun = 6; // 击晕
EffectEvent_Die = 7; // 阵亡
EffectEvent_BeforeHurt = 8; // 受伤(扣血前)
EffectEvent_AtkBack = 9; // 反击
EffectEvent_Crit = 10; // 暴击
EffectEvent_NotCombo = 11; // 未连击
EffectEvent_NotAtkBack = 12; // 未反击
EffectEvent_NotStun = 13; // 未眩晕
EffectEvent_BuffEffect = 14; // buff生效完成
EffectEvent_BeHurt = 15; // 受伤
EffectEvent_Heal = 16; // 治疗
EffectEvent_FinishAttack = 17; // 完成攻击
EffectEvent_EnemyPetDie = 18; // 敌方伙伴阵亡
EffectEvent_Start_Attack = 19; // 开始攻击
EffectEvent_Target_Stun = 20; // 命中眩晕目标
EffectEvent_Dodge = 21; // 闪避
EffectEvent_Before_Die = 22; //即将阵亡
EffectEvent_Hurt_After = 23; //扣血后生命值低于x
EffectEvent_Heal_After = 24; //治疗后生命值高于x
EffectEvent_Relive = 25; //
EffectEvent_RoundEnd = 26;
EffectEvent_UnDodgeCrit = 27;
EffectEvent_UnCritTarget = 28;
EffectEvent_Max = 29;
}
// 效果目标类型
enum EffectTargetType
{
EffectTargetType_None = 0; //
EffectTargetType_All = 1; // 全体(不分敌我, 占位未实现)
EffectTargetType_AttackTarget = 2; // 攻击目标
EffectTargetType_Master = 3; // 主人
EffectTargetType_Caster_Self = 4; // 施法者自己
EffectTargetType_Enemy_All = 5; // 全体敌人
EffectTargetType_Damage_Source = 6; // 攻击源
EffectTargetType_Max = 8;
}
//---------------------------------查询一个玩家的数据,离线或在线 BEGIN----------------------------------------------
//中间接口已经处理好了,只要调用CSPlayerQueryOtherRoleInfoReq就行,CSPlayerQueryOtherRoleInfoRes会返回具体信息,至于要回调的话要自己处理好
//角色基础信息
message RoleBaseInfo{
int64 uid = 1;
string icon = 2 [stringlength=32]; //头像
string nick = 3 [stringlength=32]; //名字
int32 level = 4; //等级
int32 gender = 5; //性别
int32 iconFrameId = 6; //头像框
int32 selfProfession = 11; //公会职级
int32 integral = 12; //竞技场积分
string realmName = 13 [stringlength=32]; //realm名
int64 chatBlackTime = 14; //被加入聊天黑名单时间
int32 power = 15; //战力
}
//返回展示用信息
message QueryRoleShowInfo{
RoleBaseInfo roleBaseInfo = 1;
HeroInfo heroInfo = 2;
}
//查询来源类型
enum QueryRoleType
{
QueryRoleType_None = 0; //默认
QueryRoleType_Chat = 2; //聊天
QueryRoleType_CBC = 3; //boss连战
}
//CS_GAMEMSGID_PLAYER_QUERY_OTHER_ROLE_INFO_REQ = 3000
message CSPlayerQueryOtherRoleInfoReq{
int64 targetUid = 1; //查询的玩家uid
QueryRoleType queryRoleType = 2; //查询来源类型
}
//CS_GAMEMSGID_PLAYER_QUERY_OTHER_ROLE_INFO_RES = 3001
message CSPlayerQueryOtherRoleInfoRes{
CSErrCode ret = 1;
int64 fromUid = 2; //查询发起者
int32 targetRealmId = 3; //查询目标的realm
QueryRoleShowInfo showInfo = 4;
QueryRoleType queryRoleType = 5; //查询来源类型
}
//---------------------------------查询一个玩家的数据,离线或在线 END----------------------------------------------
//CS_GAMEMSGID_PLAYER_SEARCH_ROLE_BYNAME_REQ = 3002; //通过玩家名称搜索玩家 请求
message CSPlayerSearchRoleByNameReq{
string targetName = 1 [stringlength=32];
}
//CS_GAMEMSGID_PLAYER_SEARCH_ROLE_BYNAME_RES = 3003; //通过玩家名称搜索玩家 应答
message CSPlayerSearchRoleByNameRes{
repeated int64 targetUid = 1 [repeatedcount = 32]; //这里只返回UID(可以考虑再通过CSPlayerQueryOtherRoleInfoReq请求)
CSErrCode ret = 2;
}
enum HeroType
{
HeroType_Hero = 0; //英雄
HeroType_Monster = 1; //怪物
HeroType_Pet = 6; //伙伴伙伴
HeroType_Max = 7;
}
/*
TaskEX begin
*/
// CS_GAMEMSGID_TASKEX_ACCEPT_TASK_REQ = 1260; // 接取任务 请求
message CSTaskEXAcceptTaskReq {
int32 taskId = 1;
uint32 defParam = 2; // 接受任务时的自定义参数,不需要时填0
// 根据任务的提供方式不同表示不同意义
// 目前使用到的方式:
// 主线任务的下一个任务id
}
// CS_GAMEMSGID_TASKEX_ACCEPT_TASK_RES = 1261; // 接取任务 回应
message CSTaskEXAcceptTaskRes {
int32 taskId = 1;
CSErrCode ret = 2;
DBTaskEXOne taskdata = 3;
int32 gmAccept = 4;
}
// CS_GAMEMSGID_TASKEX_HANDOVER_TASK_REQ = 1266; // 交付任务领取奖励 请求
message CSTaskEXHandoverTaskReq {
int32 taskId = 1;
}
// CS_GAMEMSGID_TASKEX_HANDOVER_TASK_RES = 1267; // 交付任务领取奖励 回应
message CSTaskEXHandoverTaskRes {
int32 taskId = 1;
int32 nextTaskId = 2; // 前端可能会要根据这个值做些表现效果,先预留
CSErrCode ret = 3;
}
// CS_GAMEMSGID_BATCH_TASKEX_HANDOVER_TASK_REQ = 1274; // 交付任务领取奖励 请求
message CSBatchTaskEXHandoverTaskReq {
repeated int32 taskIds = 1 [repeatedcount=32];
}
// CS_GAMEMSGID_BATCH_TASKEX_HANDOVER_TASK_RES = 1275; // 交付任务领取奖励 回应
message CSBatchTaskEXHandoverTaskRes {
CSErrCode ret = 3;
}
// CS_GAMEMSGID_TASKEX_CHANGE_NOTIFY = 1268; // 通知 任务数据发生改变
message CSTaskEXChangeNotify {
repeated DBTaskEXOne chgTaskList = 1 [repeatedcount=64];
}
// CS_GAMEMSGID_TASKEX_DELETE_NOTIFY = 1269; // 通知 有任务需要被清除
message CSTaskEXDeleteNotify {
repeated int32 delTaskIDList = 1 [repeatedcount=32];
}
// CS_GAMEMSGID_TASKEX_UPEXINFO_REQ = 1270; // 更新指定任务的指定index扩展信息
message CSTaskEXUpEXInfoReq{
int32 taskId = 1;
int32 exIdx = 2; // 要更新的扩展位置信息索引 起始索引为1
}
// CS_GAMEMSGID_TASKEX_UPEXINFO_RES = 1271; // 更新指定任务的指定index扩展信息
message CSTaskEXUpEXInfoRes{
int32 taskId = 1;
int32 exIdx = 2;
CSErrCode ret = 3;
}
// CS_GAMEMSGID_TASKEX_BATCH_UPEXINFO_REQ = 1272; // 批量更新指定任务的扩展信息
message CSTaskEXBatchUpEXInfoReq{
int32 taskId = 1;
}
// CS_GAMEMSGID_TASKEX_BATCH_UPEXINFO_RES = 1273; // 批量更新指定任务的扩展信息
message CSTaskEXBatchUpEXInfoRes{
int32 taskId = 1;
CSErrCode ret = 2;
}
//CS_GAMEMSGID_TASKEX_LIVENESSREWARD_REQ = 1274; // 任务活跃度奖励
message CsTaskEXLivenessRewardReq{
int32 taskType = 1; // 0 日常任务 1周常
int32 livenessIndex = 2; // 领取index
}
//CS_GAMEMSGID_TASKEX_LIVENESSREWARD_RES = 1275; // 任务活跃度奖励
message CsTaskEXLivenessRewardRes{
int32 livenessIndex = 1;
int32 livenessAward = 2; //活跃度奖励领取(按位记录,第一位为1表示第一个奖励已经领取)
CSErrCode ret = 3;
int32 taskType = 4; // 0 日常任务
}
// CS_GAMEMSGID_TASKEX_CLI_EVENT_REPORT_REQ = 1276; //客户端上报任务相关事件
message CsTaskExCliEventReportReq{
int32 eventType = 1; //事件类型
int32 eventId = 2; //事件id
int32 count = 3; //次数
}
// CS_GAMEMSGID_ROLE_CREATE_COMPLETE = 3004; // 是否创建角色完成 是否已经创建完角色了。 目前暂时用来代替是否已经完成了序章
message CSRoleCreateCompleteNotify {
int32 createComplate = 1; // 是否创建完成
}
//CS_GAMEMSGID_NAME_QUERY_USED_REQ = 2301;
message CSNameQueryUsedReq{
string strName = 1 [stringlength=64];
bool createIfNotExist = 2;
}
//CS_GAMEMSGID_NAME_QUERY_USED_RES = 2302;
message CSNameQueryUsedRes{
int32 ret = 1;
string strName = 2 [stringlength=64];
bool createIfNotExist = 3;
}
//CS_GAMEMSGID_LOG_CLIENT_BDC_REQ = 3201; // 客户端bdc日志备份
message CsLogClientBDCReq{
string strLogMessage = 1 [stringlength=16384];
}
//CS_GAMEMSGID_LOG_CLIENT_BDC_RES = 3202; // 客户端bdc日志备份
message CsLogClientBDCRes{
int32 ret = 1;
}
// CS_GAMEMSGID_LOG_CLIENT_TA_REQ = 3203; // 客户端ta日志备份
message CsLogClientTAReq{
string strLogMessage = 1 [stringlength=16384];
}
// CS_GAMEMSGID_LOG_CLIENT_TA_RES = 3204; // 客户端ta日志备份
message CsLogClientTARes{
int32 ret = 1;
}
//CS_GAMEMSGID_LOG_CLIENT_BDC_INFO_REQ = 3205; // 客户端bdc serverbean
message CsLogClientBDCInfoReq{
string bdcInfo = 1 [stringlength=16384];
}
//CS_GAMEMSGID_LOG_CLIENT_BDC_INFO_RES = 3206; // serverbean
message CsLogClientBDCInfoRes{
int32 ret = 1;
}
//全局结构
enum WorldGlobalDataType {
WorldGlobalDataType_None = 0;
}
message ChristmasWorldGlobalData{
int64 ChristmasScore = 1; //全服圣诞活动积分
}
//CS_GAMEMSGID_WORLDGLOBALDATA_NOTIFY = 4360;//全局数据通知
message CSWorldGlobalDataNotify{
WorldGlobalDataType dataType = 1;//只会同步对应的数据
int32 globalId = 2; //全局id,按world分就是worldid,按大区分就是大区id
int32 dataVer = 3; //数据版本
DBWorldGlobalData data = 4;
}
//玩家全局数据
message DBWorldGlobalData{
}
// --------------------------------ActivityNew End------------------------------------------------
//--------------------------------DownLoad_Resource Begin------------------------------------------------
enum DownLoadResourceOpType{
DownLoadResourceOpType_None = 0;//获取数据
DownLoadResourceOpType_SetFinish = 1;//下载完成
DownLoadResourceOpType_Getreward = 2;//领取奖励
}
//CS_GAMEMSGID_DOWNLOAD_RESOURCE_REQ = 4190; //下载资源相关
message CSDownLoadResourceReq{
DownLoadResourceOpType opType = 1;
int32 downloadId = 2; //下载的对应配表id
string accountId = 3[stringlength=256]; //服务器填
int32 accountType = 4;//服务器填
}
//CS_GAMEMSGID_DOWNLOAD_RESOURCE_RES = 4191;
message CSDownLoadResourceRes{
CSErrCode ret = 1;
DownLoadResourceOpType opType = 2;
int32 downloadId = 3; //下载的对应配表id
repeated DropDataOne rewards = 4 [repeatedcount = 32];//如果有奖励随这个发送
repeated int32 downloadResource = 5[repeatedcount = 32]; //已经下载完成的资源(账户数据)
}
//--------------------------------DownLoad_Resource end------------------------------------------------
// CS_GAMEMSGID_GM_CMD_REQ = 1019; //gm指令列表
message CSGmCmdInfoReq{
}
//CS_GAMEMSGID_GM_CMD_RES
message CSGmCmdInfoRes{
repeated GMCmdInfo api=1 [repeatedcount=256];
}
message GMCmdInfo{
string cmd=1 [stringlength=32];
string desc =2 [stringlength=64];
string help=3 [stringlength=64];;
string group=4 [stringlength=64];;
repeated GMCmdArg args=5 [repeatedcount=8];
}
message GMCmdArg{
string name=1 [stringlength=32];
string type =2 [stringlength=8];
}
//CS_GAMEMSGID_GET_CHAT_BLACKLIST_REQ 请求获取聊天屏蔽黑名单
message CSGetChatBlackListReq{
}
//CS_GAMEMSGID_GET_CHAT_BLACKLIST_RES
message CSGetChatBlackListRes{
CSErrCode ret = 1;
repeated RoleBaseInfo chatBlackList = 2 [repeatedcount=128];
}
//CS_GAMEMSGID_ADD_CHAT_BLACKLIST_REQ 增加聊天屏蔽黑名单
message CSAddChatBlackListReq{
int64 chatBlackUid = 1; //聊天屏蔽的对方玩家uid
}
//CS_GAMEMSGID_ADD_CHAT_BLACKLIST_RES = 1331;
message CSAddChatBlackListRes{
CSErrCode ret = 1;
repeated RoleBaseInfo chatBlackList = 2 [repeatedcount=128]; //最新的屏蔽列表
}
//CS_GAMEMSGID_DEL_CHAT_BLACKLIST_REQ 解除聊天屏蔽黑名单
message CSDelChatBlackListReq{
int64 chatBlackUid = 1; //聊天屏蔽的对方玩家uid
}
//CS_GAMEMSGID_DEL_CHAT_BLACKLIST_RES
message CSDelChatBlackListRes{
CSErrCode ret = 1;
repeated RoleBaseInfo chatBlackList = 2 [repeatedcount=128]; //最新的屏蔽列表
}
// CS_GAMEMSGID_QUERY_ACT_RANK_LIST_REQ = 6200;//查询排行榜列表
message CSQueryActRankListReq{
int32 rankId = 1; //排行榜id
int32 startPos = 2; //从第几名开始 从第一名开始请求 res的selfRank才是有效的
int32 endPos = 3; //第几名结束
int32 realmId = 4; //客户端不填
int32 bigRealmId = 5; //客户端不填
}
// CS_GAMEMSGID_QUERY_ACT_RANK_LIST_RES = 6201;//查询排行榜列表
message CSQueryActRankListRes{
repeated DBActRankTopPlayerInfo rankList = 6 [repeatedcount=100];
int32 myRank = 2;
CSErrCode ret = 3;
}
// CS_GAMEMSGID_QUERY_ACT_RANK_ACTIVITY_LIST_REQ = 6202;//查询排行榜活动
message CSQueryActRankActivityListReq{
}
message ActivityRank{
int32 actID = 1;
int64 beginTime = 2;
int64 endTime = 3;
int64 remainTime = 4;
}
// CS_GAMEMSGID_QUERY_ACT_RANK_ACTIVITY_LIST_RES = 6203;//查询排行榜活动
message CSQueryActRankActivityListRes{
repeated ActivityRank list = 1[repeatedcount = 10];
}
message QuestionnaireData{
int32 actId = 1;
int32 status = 2;// 0 没点击,1 已点击,2已领奖
}
//CS_GAMEMSGID_QUESTIONNAIRE_REWARD_REQ = 1120; //调查问卷发送奖励
message QuestionnaireRewardReq{
int32 actId = 1;
int32 status = 2;// 1 点击 2领奖
}
//CS_GAMEMSGID_QUESTIONNAIRE_REWARD_RES = 1121;//调查问卷发送奖励
message QuestionnaireRewardRes{
int32 ret = 1;
}
//CS_GAMEMSGID_QUESTIONNAIRE_REWARD_SYN = 1122;//同步信息
message QuestionnaireInfoSync{
repeated QuestionnaireData questionData = 1 [repeatedcount =4];//问卷获得给你数据
}
//---------------------------------------------act rank end-----------------------
//CS_GAMEMSGID_PEAKLEVEL_ADDPOINT
message CSPeakLevelAddPoint{
repeated IDValue32 points = 1 [repeatedcount=16];
}
//CS_GAMEMSGID_PEAKLEVEL_ADDPOINT_RES
message CSPeakLevelAddPointRes{
repeated IDValue32 points = 1 [repeatedcount=16];
CSErrCode ret = 3;
DBPeakLevelData data = 4;
}
//CS_GAMEMSGID_PEAKLEVEL_RESETPOINT
message CSPeakLevelResetPoint{
}
//CS_GAMEMSGID_PEAKLEVEL_RESETPOINT_RES
message CSPeakLevelResetPointRes{
CSErrCode ret = 3;
DBPeakLevelData data = 4;
}
//CS_GAMEMSGID_PEAKLEVEL_SYNC
message CSPeakLevelSync{
DBPeakLevelData data = 4;
}
//CS_GAMEMSGID_KICK_MULTILOGIN
message CSKickMultiLogin{
}
//CS_GAMEMSGID_CB_START_REQ
message CSCBStartReq{//开始战斗
}
//CS_GAMEMSGID_CB_START_RES
message CSCBStartRes{
CSErrCode ret = 1;
int32 initBattleId = 2;
int32 initLayer = 3;
ChapterBattleData battleData = 4;
DBCBattle data = 6;
}
//CS_GAMEMSGID_CB_FINISH_REQ
message CSCBFinishLayerReq{//结束当前层
int32 hpReamin = 1;//boss血量剩余,胜利传0
int32 layer = 2;
int32 msgSeq = 3;
int32 forceLeave = 4;
}
//CS_GAMEMSGID_CB_FINISH_RES
message CSCBFinishLayerRes{
CSErrCode ret = 1;
int32 hpReamin = 2;
int32 layer = 3;
int32 score = 4;
repeated TypeIDValue32 thisReward = 5[repeatedcount = 32];
DBCBattle data = 6;
int32 rednamestageId = 7;
ChapterBattleData battleData = 8;
int32 msgSeq = 9;
}
//CS_GAMEMSGID_CB_LEAVE_REQ
message CSCBLeaveReq{//离开战斗,结算奖励
int32 layer = 2;
int32 msgSeq = 3;
}
//CS_GAMEMSGID_CB_LEAVE_RES
message CSCBLeaveRes{
CSErrCode ret = 1;
repeated CSItemChgInfo items = 2 [repeatedcount = 64];
DBCBattle data = 6;
int32 msgSeq = 7;
}
//CS_GAMEMSGID_CB_GETLAYERREWARD_REQ
message CSCBGetLayerRewardReq{//领取阶段奖励
int32 layer = 1;
}
//CS_GAMEMSGID_CB_GETLAYERREWARD_RES
message CSCBGetLayerRewardRes{
CSErrCode ret = 1;
int32 layer = 2;
DBCBattle data = 6;
}
//CS_GAMEMSGID_PAY_WSJSAPI_REQ
message CSWXJSPayReq{
string dataJson = 1[stringlength=2048];
int32 gsid = 2;
int64 uid = 3;
}
//CS_GAMEMSGID_PAY_WSJSAPI_RES
message CSWXJSPayReS{
string dataJson = 1[stringlength=2048];
string prepayId = 2[stringlength=256];
string jsApiData = 3[stringlength=2048];
int32 gsid = 4;
}
//CS_GAMEMSGID_RANK_PLAYER_BYLEVEL_REQ
message CSRankPlayerByLevelReq{
int64 uid = 1;
int32 realmId = 2;
int32 lvMin = 3;
int32 lvMax = 4;
}
//CS_GAMEMSGID_RANK_PLAYER_BYLEVEL_RES
message CSRankPlayerByLevelRes{
int64 uid = 1;
int32 realmId = 2;
int32 lvMin = 3;
int32 lvMax = 4;
repeated int64 uids = 5 [repeatedcount = 10];
}
//CS_GAMEMSGID_CBC_PLAYER_SYNC
message CSCBCPlayerQuerySync{
int64 uid = 1;
QueryRoleShowInfo info = 2;
}
message DBPreset{ //预设
int32 buyCount = 1;
repeated DBPresetOne sets = 2[repeatedcount = 6];
}
message DBPresetOne{
DBPeakLevelData levelData = 1; //巅峰加点
repeated IDValue32 wearEquip = 2 [repeatedcount = 12]; // 装备
repeated IDValue32 wearGem = 3 [repeatedcount = 32]; //宝石
DbTalentData talents = 4; //天赋
int32 wingskinId = 5; //穿戴的皮肤id
int32 wingrefitId = 6; //穿戴的皮肤所对应的等级id
HeroPropView propView = 7; //最终属性值
string name = 8 [stringlength = 32]; //名称
bool saved = 9; //是否保存过
int32 wingwearId = 10;
}
//CS_GAMEMSGID_PresetSaveReq
message CSPresetSaveReq{
int32 presetIndex = 1;
}
//CS_GAMEMSGID_PresetSaveRes
message CSPresetSaveRes{
int32 presetIndex = 1;
DBPreset preset = 2;
CSErrCode ret = 3;
}
//CS_GAMEMSGID_PresetBuyOneReq
message CSPresetBuyOneReq{
}
//CS_GAMEMSGID_PresetBuyOneRes
message CSPresetBuyOneRes{
int32 presetIndex = 1;
DBPreset preset = 2;
CSErrCode ret = 3;
}
//CS_GAMEMSGID_PresetRenameReq
message CSPresetRenameReq{
string name = 1[stringlength = 32];
int32 presetIndex = 2;
}
//CS_GAMEMSGID_PresetRenameRes
message CSPresetRenameRes{
int32 presetIndex = 1;
DBPreset preset = 2;
CSErrCode ret = 3;
}
//CS_GAMEMSGID_PresetApplyReq
message CSPresetApplyReq{
int32 presetIndex = 2;
}
//CS_GAMEMSGID_PresetApplyRes
message CSPresetApplyRes{
int32 presetIndex = 1;
CSErrCode ret = 3;
}
// -----------------------------------core game--------------------------------
//CS_GAMEMSGID_JOIN_ROOM_REQ
message CSJoinRoomReq{
RoomMode mode = 1;
int32 pos = 2;
int32 hero_id = 3;
}
//CS_GAMEMSGID_JOIN_ROOM_RES
message CSJoinRoomRes{
RoomMode mode = 1;
int32 pos = 2;
int32 eid = 3;
}
//CS_GAMEMSGID_ROOM_INFO_SYNC
message CSRoomInfoSync{
RoomMode mode = 1;
repeated int32 poses = 2[repeatedcount = 12];
repeated int32 eids = 3[repeatedcount = 12];
}
enum FrameCmdDef
{
FrameCmdDef_Invalid = 0;
FrameCmdDef_MoveDir = 1; //实体移动方向
FrameCmdDef_MoveStop = 2; //实体移动停止
FrameCmdDef_UseCommonAbility = 4; //实体使用普通技能
// ... // 其他指令
FrameCmdDef_Max = 11;
}
message MoveDirectionCommand{
int32 degree = 1;
int32 seq = 2;
}
message UseCommonAbilityCommand{
int32 start = 1; // 1开始使用, 0结束使用
}
//CS_GAMEMSGID_PLYAER_OP_INFO_SYNC
message CSPlayerOpInfo{
int32 eid = 1;
FrameCmdDef type = 2;
MoveDirectionCommand move = 3;
UseCommonAbilityCommand useCommonAbility = 4;
// ... // 其他指令
}
message CSFrapBootInfo{
uint32 dwKFrapsNo = 1;
repeated CSPlayerOpInfo ops = 2[repeatedcount = 20];
int cnt = 3; // ops的长度
}
// CS_MULT_FRAP_BOOT_INFO_SYNC
message CSMultFrapBootInfo
{
uint32 spareNum = 1; // 冗余数量
repeated CSFrapBootInfo[] spareFraps = 2[repeatedcount = 4];
}
message CampPlayerInfo
{
int32 eid = 1;
int32 lvl = 2;
}
message CampInfo
{
int32 playerNum = 1;
repeated CampPlayerInfo campInfos = 2[repeatedcount = 2];
}
// CS_MULTGAME_BEGINLOAD_SYNC
message CSMultGameBeginLoad
{
int32 mapId = 1;
repeated CampInfo campInfos = 2[repeatedcount = 2];
}
message HeroModel
{
int32 entityId = 1; // 英雄实体id
int32 heroId = 2; // 英雄id
int32 posOfTeam = 3; // 英雄在队伍中的位置
int32 level = 4; // 英雄等级
int32 exp = 5; // 英雄经验
int32 teamIdx = 6; // 队伍id
int64 uid = 7; // 玩家id
}
// 阵营
message TeamModel
{
int32 teamNum = 1; // 阵营id
}
// CS_GAMEMSGID_BATTLE_MODE_SYNC
message CSBattleModeSync
{
int32 mode = 1; // 匹配模式
int32 mapId = 2; // 地图id
repeated TeamModel teams = 3[repeatedcount = 4]; // 阵营
repeated HeroModel heroes = 4[repeatedcount = 20]; // 阵营英雄
int32 localPlayerEid = 5; // 本地玩家eid
}