4014 lines
159 KiB
Protocol Buffer
4014 lines
159 KiB
Protocol Buffer
syntax = "proto3";
|
||
package serverproto;
|
||
|
||
import "user.proto";
|
||
|
||
message ServerInfo{
|
||
string id = 1;
|
||
int32 port = 2;
|
||
}
|
||
//project Service:"gate|game" RouteRule:"pass"
|
||
message CSPingReq{
|
||
string open_id = 3;
|
||
}
|
||
|
||
message SCPingAck{
|
||
}
|
||
|
||
//游戏登陆操作project Service:"gate" RouteRule:"pass"
|
||
message CSLoginReq{ //project game|auth //RouteRule game
|
||
string platform = 1; //用户平台
|
||
int32 phone_platform = 2; //手机平台 android ios
|
||
string platform_token = 3; //平台token验证登陆
|
||
string open_id = 4; //平台账号ID //sdkUserID
|
||
// string password = 5; //密码
|
||
// string crypt_pass = 6; //加密aes串
|
||
int32 game_version = 7; //游戏版本号
|
||
string ip = 8; //客户端登陆时ip地址
|
||
int32 select_zone = 9; //合服使用(先根据IP获取是否存在,不存在则创建)
|
||
string sub_platform = 10; //用户平台下的不同分发媒体
|
||
|
||
string user_id = 11; //userID
|
||
}
|
||
message SCLoginAck{ //project gate
|
||
int32 error = 1; //错误码 0表示无错误
|
||
uint64 client_id = 2;
|
||
string unisdk_login_json = 3; //网易登录验证回复sdk信息
|
||
}
|
||
//断线重连
|
||
message CSReconnectReq { //project game //RouteRule game
|
||
string open_id = 1; //平台账号ID
|
||
string platform_token = 2; //平台token验证登陆
|
||
string uid = 3; //玩家唯一ID
|
||
string crypt_pass = 4; //加密aes串f
|
||
string platform = 5; //用户平台
|
||
}
|
||
message SCReconnectAck {
|
||
int32 error = 1; //错误码,OK表示重连成功
|
||
ReconnectUserData reconnect_data = 2; //重连成功后返回的信息(暂时没有信息添加)
|
||
}
|
||
|
||
message SCHandShakeNtf{
|
||
string crypt_pass = 1; //返回给客户端(login时带回该字符串)
|
||
}
|
||
|
||
//客户端发起创建角色请求
|
||
message CSCreateRoleReq { //project game //RouteRule game
|
||
string open_id = 1; //平台账号
|
||
int32 job_id = 2; //roleCfg配置表ID
|
||
int32 sex = 3; //性别
|
||
int32 country = 4; //国家
|
||
int32 eye = 5; //眼睛
|
||
int32 hair = 6; //头发
|
||
int32 head = 7; //头饰
|
||
int32 hair_avatar = 8; //头发模型
|
||
string active_code = 9; //激活码
|
||
bool use_user_input = 10;
|
||
int32 head_id = 11; // 头像ID
|
||
string nickname = 12; // 昵称
|
||
}
|
||
|
||
message SCCreateRoleAck {
|
||
int32 error = 1; //错误码
|
||
uint64 create_role_time = 2; //创建时间
|
||
uint64 uid = 3;
|
||
int32 gender = 4;
|
||
}
|
||
//创建流程中发送昵称
|
||
message CSNameReq { //project game //RouteRule game
|
||
string name = 1;
|
||
}
|
||
message SCNameAck {
|
||
int32 error = 1; //错误码
|
||
string name = 2;
|
||
}
|
||
|
||
//玩家启动时需要的基础信息 (后续根据需求来请求数据,暂时做成都发)
|
||
message SCStartupInfoNtf {
|
||
uint64 server_time = 1; //服务器当前时间戳
|
||
uint64 create_time = 2; //创建角色时间
|
||
ReconnectInfo reconnect_info = 3; //重连信息(暂时不使用,后续扩展时用)
|
||
RoleBase role_base = 4; //玩家基础信息
|
||
RoleBag role_bag = 5; //玩家背包信息
|
||
RoleHero role_hero = 6; //伙伴信息
|
||
RoleEquip role_equip = 7; //准备信息
|
||
RoleChip role_chip = 8; //伙伴碎片
|
||
RoleSkill role_skill = 9; //技能
|
||
RoleCard role_card = 10; //卡片数据
|
||
RoleFashion role_fashion = 11; //时装
|
||
RoleBattle role_battle = 12; //战斗相关数据
|
||
FightPowerData role_fightpower = 13; //战斗力数据
|
||
RoleChat role_chat = 14; //聊天处理
|
||
RoleTask role_task = 15; //任务相关
|
||
RoleRed role_red = 16; //小红点
|
||
RoleCompetition role_competition = 17; //赛季玩法信息(主界面显示赛季信息)
|
||
RoleMap role_map = 18; //rolemap
|
||
RoleTower role_tower = 19; //爬塔
|
||
RoleDraw role_draw = 20; //抽取系统
|
||
RoleRune role_rune = 21; //卢恩商会
|
||
RoleDaoChang100 role_daochang100 = 22; //百人道场
|
||
RoleCross role_cross = 23; //跨服数据
|
||
RoleSkillEquip role_skill_equip = 24; //神器
|
||
RoleWish role_wish_box = 25; //许愿想数据
|
||
|
||
bool func_disable = 100; //功能屏蔽
|
||
uint64 service_start_time = 101; //服务器开服时间
|
||
string server_region = 102; //大区标识
|
||
repeated uint32 func_disable_flag = 103; //动态功能屏蔽枚举(按位使用,服务器只负责传递数值)[1]1-32 [2]33-64
|
||
}
|
||
//客户端没收到多条协议,需要做数据判断,有数据就添加没数据不处理,例如pet_manual
|
||
//数据为空客户端不能直接拿空数据覆盖
|
||
message SCStartupInfoPetNtf {
|
||
RolePet role_pet_info = 1;
|
||
}
|
||
message SCStartupInfoEquipNtf {
|
||
RoleEquip role_equip_info = 1;
|
||
}
|
||
message SCStartupInfoCardNtf {
|
||
RoleCard role_card_info = 1;
|
||
}
|
||
message SCStartupInfoEndNtf {
|
||
}
|
||
|
||
//获取服务器时间ms
|
||
message CSGetServerTimeReq { //project game //RouteRule game
|
||
}
|
||
message SCGetServerTimeAck {
|
||
uint64 server_time = 1; //服务器当前时间戳
|
||
}
|
||
|
||
//获取服务器时间详细信息。包括:时间戳时区、时区名称、时区偏移量
|
||
message CSGetServerTimeInfoReq { //project game //RouteRule game
|
||
}
|
||
message SCGetServerTimeInfoAck {
|
||
uint64 server_time = 1; //服务器当前时间戳
|
||
string name = 2; //服务器当前时区名称
|
||
uint64 offset = 3;//服务器当前时区相对于UTC的偏移量
|
||
bool dst = 4;//判断是否是夏令时
|
||
|
||
}
|
||
//退出登录
|
||
message SCLogoutNtf {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//服务器踢人
|
||
message SCKickOutNtf {
|
||
int32 error = 1; //错误码
|
||
uint64 ban_end_time = 2; //封号结束时间s
|
||
}
|
||
|
||
//消耗属性点
|
||
message CSAddAttrPointReq{ //project game //RouteRule game
|
||
repeated KeyValueType attr_list = 1; //属性点添加列表
|
||
int32 hero_id = 2; //英雄ID
|
||
}
|
||
|
||
message SCAddAttrPointAck{
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //英雄ID
|
||
}
|
||
//重置属性点
|
||
message CSResetAttrPointReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄ID
|
||
}
|
||
|
||
message SCResetAttrPointAck{
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //英雄ID
|
||
}
|
||
|
||
//增加素质点
|
||
message CSAddQualityPointReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄ID
|
||
int32 item_id = 2; //果实Id
|
||
}
|
||
|
||
//增加素质点返回
|
||
message SCAddQualityPointAck{
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //英雄ID
|
||
int32 item_id = 3; //道具Id
|
||
}
|
||
|
||
//战斗力变化通知客户端
|
||
message SCFightPowerChagneNtf {
|
||
FightPowerData data = 2;
|
||
}
|
||
|
||
//请求激活头像
|
||
message CSActiveHeadReq { //project game //RouteRule game
|
||
int32 head_id = 1; //头像Id
|
||
}
|
||
message SCActiveHeadAck {
|
||
int32 error = 1;
|
||
int32 head_id = 2; //请求激活的头像ID
|
||
}
|
||
|
||
//请求头像信息
|
||
message CSHeadInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCHeadInfoAck {
|
||
repeated int32 head_list = 1; //激活的头像列表
|
||
RoleHeadCond head_Info = 2; //头像信息
|
||
}
|
||
|
||
//设置头像ID
|
||
message CSSetHeadIdReq { //project game //RouteRule game
|
||
int32 head_id = 1;
|
||
}
|
||
message SCSetHeadIdAck {
|
||
int32 error = 1; //errorcode
|
||
int32 head_id = 2; //请求设置的头像ID
|
||
}
|
||
|
||
//改名
|
||
message CSRenameReq { //project game //RouteRule game //confirm
|
||
string name = 1;
|
||
}
|
||
message SCRenameAck {
|
||
int32 error = 1; //错误码
|
||
string name = 2;
|
||
}
|
||
|
||
message CSChangeHeadFrameReq { //project game //RouteRule game
|
||
int32 head_frame_id = 1; //请求设置的头像框ID
|
||
}
|
||
message SCChangeHeadFrameAck {
|
||
int32 error = 1; //errorcode
|
||
int32 head_frame_id = 2; //请求设置的头像框ID
|
||
}
|
||
message CSHeadFrameInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCHeadFrameInfoAck {
|
||
int32 error = 1; //errorcode
|
||
repeated HeadFrameData head_frame = 2;
|
||
}
|
||
|
||
message SCHeadFrameChangeNtf {
|
||
repeated HeadFrameData head_frame = 1; //到期的头像框
|
||
}
|
||
|
||
message CSUseHeadFrameItemReq { //project game //RouteRule game
|
||
uint64 item_id = 1; //背包中动态生成的item_id
|
||
uint32 item_num = 2; //使用个数
|
||
}
|
||
|
||
message SCUseHeadFrameItemAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //头像框转换道具
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////hero
|
||
//伙伴培养
|
||
message CSHeroLevelUpReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //动态生成的id
|
||
}
|
||
message SCHeroLevelUpAck {
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2;
|
||
int32 hero_level = 3;
|
||
}
|
||
//伙伴进阶
|
||
message CSHeroAdvanceReq { //project game //RouteRule game
|
||
int32 hero_id = 2; //动态生成的id
|
||
}
|
||
message SCHeroAdvanceAck {
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2;
|
||
int32 advance_level = 3;
|
||
}
|
||
//伙伴上阵处理
|
||
message CSHeroBattleReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //当前正在出战的伙伴
|
||
bool is_battle = 2; //false下阵,true上阵
|
||
}
|
||
message SCHeroBattleAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//角色等级提升通知
|
||
message SCBaseLevelUpNtf {
|
||
int32 old_level = 1;
|
||
int32 new_level = 2;
|
||
}
|
||
//角色职业等级提升通知
|
||
message SCJobLevelUpNtf{
|
||
int32 old_level = 1;
|
||
int32 new_level = 2;
|
||
}
|
||
//用户基础数据变更通知
|
||
message SCRoleBaseInfoNtf {
|
||
uint64 coin = 1; //玩家金币
|
||
uint32 rmb = 2; //钻石
|
||
RoleData role_data = 3; //玩家附属属性
|
||
repeated KeyValueType res_list = 4; //玩家其他资源列表(不放背包的资源)
|
||
int32 repress_skill_pvp_val = 5; //技能竞技压制值
|
||
}
|
||
//伙伴信息变更通知
|
||
message SCRoleHeroInfoNtf {
|
||
repeated HeroData hero_data = 1; //玩家伙伴信息
|
||
}
|
||
|
||
//英雄碎片
|
||
message CSHeroChipDecomposeReq { //project game //RouteRule game
|
||
repeated int32 chip_type_list = 1; //卡片类型,一键分解时使用
|
||
repeated KeyValueType chip_list = 2; //用来分解的道具ID
|
||
}
|
||
message SCHeroChipDecomposeAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //分解获得的资源数据
|
||
}
|
||
|
||
//伙伴突破(前面的突破是策划的进阶概念,这个里是突破)
|
||
message CSHeroStrengthReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //动态生成的id
|
||
}
|
||
message SCHeroStrengthAck {
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2;
|
||
int32 strength_level = 3;
|
||
}
|
||
|
||
//主角转职
|
||
message CSHeroChangeJobReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //转职的伙伴ID
|
||
int32 job_id = 2; //需要转的职业ID
|
||
}
|
||
message SCHeroChangeJobAck {
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //转职的伙伴ID
|
||
}
|
||
|
||
message SCHeroConditinDataNtf{
|
||
repeated ChangeJob condition = 1; //可转职业条件
|
||
}
|
||
|
||
//请求伙伴战力
|
||
message CSHeroFighPowerReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //伙伴ID
|
||
}
|
||
message SCHeroFighPowerAck {
|
||
int32 error = 1; //errorcode
|
||
int32 hero_id = 2; //伙伴ID
|
||
}
|
||
|
||
//洗点
|
||
message CSHeroResetSkillPointReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //洗点的主角或者伙伴
|
||
int32 stage = 2; //洗点的阶段
|
||
}
|
||
message SCHeroResetSkillPointAck {
|
||
int32 error = 1; //洗点结果
|
||
}
|
||
|
||
//激活
|
||
message CSHeroActiveReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //伙伴ID
|
||
}
|
||
message SCHeroActiveAck {
|
||
int32 error = 1; //激活结果
|
||
int32 hero_id = 2; //伙伴ID
|
||
}
|
||
|
||
//职业更换
|
||
message CSHeroReplaceJobReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //唯一ID
|
||
int32 job_id = 2; //替换的职业ID
|
||
}
|
||
message SCHeroReplaceJobAck {
|
||
int32 error = 1; //errorcode
|
||
int32 hero_id = 2; //唯一ID
|
||
int32 job_id = 3; //替换的职业ID
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////
|
||
//神器变更通知
|
||
message SCSkillEquipChangeNtf{
|
||
repeated SkillEquipChangeData skill_equip_change_list = 1; //神器变更数据
|
||
bool ignore = 2; //是否屏蔽显示新增神器
|
||
}
|
||
|
||
//神器佩戴
|
||
message CSSkillEquipUpReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄动态id
|
||
int32 slot_index = 2; //坑位部件类型 (slot_index值为-1表示一键装备 从0开始)
|
||
uint32 skill_equip_id = 3; //神器实例id
|
||
}
|
||
message SCSkillEquipUpAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
//神器槽位变更
|
||
message SCSkillEquipSlotDataNtf{
|
||
SkillEquipSlotData slot = 1; //坑位信息
|
||
int32 hero_id = 2; //对应英雄
|
||
}
|
||
|
||
//卸下神器
|
||
message CSSkillEquipDownReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄动态id
|
||
int32 slot_index = 2; //坑位部件类型 (slot_index值为-1表示一键卸下 从0开始)
|
||
}
|
||
message SCSkillEquipDownAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
//神器升星
|
||
message CSSkillEquipLevelUpReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄id
|
||
uint32 skill_equip_id = 2; //神器id
|
||
repeated uint32 select_cost = 3; //消耗的材料
|
||
}
|
||
message SCSkillEquipLevelUpAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
//神器槽位升级
|
||
message CSSkillEquipSlotLevelUpReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄动态id
|
||
int32 slot_index = 2; //槽位索引 (从0开始)
|
||
}
|
||
message SCSkillEquipSlotLevelUpAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
//神器分解
|
||
message CSSkillEquipDecomposeReq{ //project game //RouteRule game
|
||
repeated uint32 skill_equip_id = 1; //神器id
|
||
}
|
||
message SCSkillEquipDecomposeAck{
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //分解获得的资源数据
|
||
}
|
||
|
||
//神器重铸
|
||
message CSSkillEquipRemadeReq{ //project game //RouteRule game
|
||
uint32 skill_equip_id = 1; //神器id
|
||
}
|
||
message SCSkillEquipRemadeAck{
|
||
int32 error = 1; //错误码
|
||
uint32 old_id = 2; //重铸前的神器id
|
||
uint32 new_id = 3; //重铸后的神器id
|
||
}
|
||
|
||
//神器重铸尺子
|
||
message CSSkillEquipPoolReq{ //project game //RouteRule game
|
||
|
||
}
|
||
message SCSkillEquipPoolAck{
|
||
int32 error = 1; //错误码
|
||
int32 cur_id = 2; //当前重铸ID
|
||
repeated int32 pool_id_list = 3; //当前最新重铸池子
|
||
repeated int32 next_pool = 4; //下一批重铸池子
|
||
uint64 next_begin = 5; //下一批开始时间
|
||
}
|
||
|
||
//神器转移
|
||
message CSSkillEquipShiftReq{ //project game //RouteRule game
|
||
uint32 src_id = 1; //神器id
|
||
uint32 dst_id = 2; //神器id
|
||
}
|
||
|
||
message SCSkillEquipShiftAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////equip
|
||
//装备锻造(已经装备的不参加锻造)
|
||
message CSEquipForgeReq { //project game //RouteRule game
|
||
int32 config_id = 1; //config_id为0表示一键锻造
|
||
int32 once = 2; //合成一次还是多次
|
||
int32 equip_type = 3; //一键锻造的部件
|
||
int32 sub_equip_type = 4; //武器子类型,表示职业
|
||
}
|
||
message SCEquipForgeAck{
|
||
int32 error = 1; //错误码
|
||
int32 type = 2; //操作类型客户端使用
|
||
}
|
||
//部分装备变化信息
|
||
message SCEquipChangeNtf{
|
||
repeated EquipData equip_list = 1;
|
||
bool ignore = 2; //是否屏蔽显示新增道具显示
|
||
}
|
||
//坑位装备(一键装备替换所有最高级装备)
|
||
message CSEquipUpReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄动态id
|
||
int32 slot_index = 2; //坑位部件类型 (slot_index值为0表示一键装备 从1开始到6表示6个位置)
|
||
int32 equip_id = 3; //装备configId
|
||
}
|
||
message SCEquipUpAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
message SCSlotDataNtf{
|
||
SlotData slot = 1; //坑位信息
|
||
int32 hero_id = 2; //对应英雄
|
||
}
|
||
//一键卸下装备
|
||
message CSEquipDownReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄动态id
|
||
int32 sub_index = 2; //坑位部件类型 (slot_index值为0表示一键装备 从1开始到6表示6个位置)
|
||
}
|
||
|
||
//一键升级(升级位置上能升级的所有装备)
|
||
message CSEquipLevelUpAllReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄动态id
|
||
}
|
||
message SCEquipLevelUpAllAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
//装备对应槽位升级
|
||
message CSEquipSlotLevelUpReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄动态id
|
||
int32 sub_slot_index = 2; //6个位置中的索引([1,6])
|
||
}
|
||
message SCEquipSlotLevelUpAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////card
|
||
//装备对应槽位镶嵌卡片
|
||
message CSCardMountReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //4套坑位的索引值([1,4])
|
||
int32 sub_slot_index = 2; //6个位置中的索引([1,6])
|
||
int32 card_slot_index = 3; //卡槽对应索引[1,4]
|
||
int32 card_id = 4; //configId
|
||
}
|
||
message SCCardMountAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//装备对应槽位卸下卡片
|
||
message CSCardDownReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //4套坑位的索引值([1,4])
|
||
int32 sub_slot_index = 2; //6个位置中的索引([1,6])
|
||
int32 card_slot_index = 3; //卡槽索引[1,4] 0表示一键卸下
|
||
}
|
||
message SCCardDownAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//卡片重置
|
||
message CSCardComposeReq{ //project game //RouteRule game
|
||
repeated int32 card_list = 1; //
|
||
}
|
||
message SCCardComposeAck{
|
||
int32 error = 1; //错误码
|
||
int32 new_card_id = 2; //合成的新卡ID
|
||
}
|
||
//卡片分解
|
||
message CSCardDecomposeReq{ //project game //RouteRule game
|
||
repeated KeyValueType card_list = 1; //当数据不传入时表示一键分解
|
||
int32 card_type = 2; //卡片类型,一键分解时使用
|
||
}
|
||
message SCCardDecomposeAck{
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //分解获得的资源数据
|
||
}
|
||
//卡牌数据变更通知
|
||
message SCCardChangeNtf{
|
||
repeated CardData card_list = 1;
|
||
bool ignore = 2;
|
||
}
|
||
//卡牌卡槽解锁通知
|
||
message SCCardSlotChangeNtf{
|
||
repeated KeyValueType slot_list = 1;
|
||
}
|
||
|
||
//Bag背包相关
|
||
message SCItemChangeNtf{
|
||
repeated ItemData item_list = 1;
|
||
bool ignore = 2;
|
||
}
|
||
//使用道具(例如开宝箱等)
|
||
message CSUseItemReq { //project game //RouteRule game
|
||
uint64 item_id = 1; //背包中动态生成的item_id
|
||
uint32 item_num = 2; //使用个数
|
||
repeated int32 item_idx_list = 3; //获得该道具包中的其中一个道具(根据给定的配置表索引)
|
||
bool force_item_id = 4; //强制使用当前item_id道具
|
||
}
|
||
message SCUseItemAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //分解获得的资源数据
|
||
}
|
||
//背包道具销毁
|
||
message CSDelItemReq { //project game //RouteRule game
|
||
repeated uint64 item_id_list = 1; //背包中动态生成的item_id
|
||
}
|
||
message SCDelItemAck {
|
||
int32 error = 1; //错误码
|
||
repeated int32 del_cfg_id_list = 2;
|
||
}
|
||
|
||
//英雄碎片合成
|
||
message CSChipComposeReq{ //project game //RouteRule game
|
||
int32 config_id = 1;
|
||
}
|
||
message SCChipComposeAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
message SCChipChangeNtf{
|
||
repeated ChipData chip_list = 1; //英雄碎片列表
|
||
}
|
||
|
||
message CSCardUpGradeReq { //project game //RouteRule game
|
||
repeated KeyValueType config_ids = 1;
|
||
}
|
||
message SCCardUpGradeAck {
|
||
int32 error = 1;
|
||
repeated KeyValueType config_ids = 2;
|
||
}
|
||
|
||
message CSCardEquipAllReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄ID
|
||
repeated EquipSlotCards eqiup_slot_data = 2; //卡槽数据
|
||
}
|
||
message SCCardEquipAllAck {
|
||
int32 error = 1;
|
||
int32 hero_id = 2;
|
||
}
|
||
|
||
message CSCardEquipDownReq { //project game //RouteRule game
|
||
int32 hero_id = 1;
|
||
}
|
||
message SCCardEquipDownAck {
|
||
int32 hero_id = 1;
|
||
int32 error = 2;
|
||
}
|
||
|
||
message CSCardUpGradeAllReq { //project game //RouteRule game
|
||
int32 hero_id = 1;
|
||
repeated KeyValueType data = 2; //key:装备槽位,valueL:卡片槽位
|
||
}
|
||
message SCCardUpGradeAllAck {
|
||
int32 hero_id = 1;
|
||
int32 error = 2;
|
||
}
|
||
|
||
message CSCardCollectInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCCardCollectInfoAck {
|
||
int32 error = 1;
|
||
repeated CardCollect card_collect = 2; //变更的卡片图册
|
||
}
|
||
|
||
message CSCardCollectRewardReq { //project game //RouteRule game
|
||
int32 card_id = 1;
|
||
int32 level = 2;
|
||
}
|
||
message SCCardCollectRewardAck {
|
||
int32 error = 1;
|
||
int32 card_id = 2;
|
||
int32 level = 3;
|
||
repeated KeyValueType reward_list = 4;
|
||
}
|
||
message SCCardCollectChangeNtf {
|
||
repeated CardCollect card_collect = 1; //变更的卡片图册
|
||
}
|
||
|
||
message CSCardCollectionRankReq{ //project game|rank //RouteRule game
|
||
int32 card_id = 1;
|
||
}
|
||
message SCCardCollectionRankAck{ //project game
|
||
int32 error = 1;
|
||
int32 card_id = 2;
|
||
int32 card_level = 3;
|
||
CommonPlayerBriefInfo player_info = 4;
|
||
uint64 achievement_time = 5;
|
||
}
|
||
|
||
//卡片互换
|
||
message CSCardLevelExchangeReq { //project game //RouteRule game
|
||
int32 source_card_id = 1;
|
||
int32 target_card_id = 2;
|
||
}
|
||
message SCCardLevelExchangeAck {
|
||
int32 error = 1;
|
||
int32 source_card_id = 2;
|
||
int32 target_card_id = 3;
|
||
}
|
||
/////////////////////////////////////////////////////////skill
|
||
//技能槽位数据变更通知
|
||
message SCSkillSlotDataNtf{
|
||
int32 hero_id = 1;
|
||
repeated RoleSkillSlot slot_info = 2; //技能槽位(客户端不存在当前槽位信息就添加,存在就更新)
|
||
}
|
||
//职业对应技能信息变更通知
|
||
message SCJobSkillDataNtf{
|
||
int32 hero_id = 1;
|
||
repeated JobSkillData job_skill_list = 2; //
|
||
}
|
||
//技能槽位(栏位)升级
|
||
message CSSkillSlotLevelUpReq{ //project game //RouteRule game
|
||
int32 hero_id = 1;
|
||
int32 idx = 2; //对应的槽位索引
|
||
}
|
||
message SCSkillSlotLevelUpAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//替换技能
|
||
message CSReplaceSkillReq{ //project game //RouteRule game
|
||
int32 hero_id = 1;
|
||
int32 idx = 2; //替换槽位
|
||
int32 skill_id = 3; //替换技能(原先位置有就替换技能,没有就装备技能)
|
||
}
|
||
message SCReplaceSkillAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//激活技能树中的技能
|
||
message CSActiveSkillReq{ //project game //RouteRule game
|
||
int32 hero_id = 1;
|
||
int32 skill_id = 2; //技能ID
|
||
}
|
||
message SCActiveSkillAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//交换栏位中的技能
|
||
message CSSwapSkillReq{ //project game //RouteRule game
|
||
int32 hero_id = 1;
|
||
int32 first = 2; //替换槽位
|
||
int32 second = 3; //替换槽位
|
||
}
|
||
message SCSwapSkillAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//设置技能列表
|
||
message CSSetSkillListReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄id
|
||
repeated int32 skill_list = 2; //技能列表
|
||
}
|
||
message SCSetSkillListAck{
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //英雄id
|
||
}
|
||
//技能升级请求
|
||
message CSSkillLevelUpReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄ID
|
||
int32 skill_id = 2; //升级的技能ID
|
||
}
|
||
message SCSkillLevelUpAck{
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //英雄ID
|
||
int32 skill_id = 3; //升级的技能ID
|
||
}
|
||
message CSResetSkillLevelReq{ //project game //RouteRule game
|
||
int32 hero_id = 1; //英雄ID
|
||
bool is_advanced = 2; //是否高级技能
|
||
}
|
||
message SCResetSkillLevelAck{
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //英雄ID
|
||
int32 reset_count = 3; //重置次数
|
||
}
|
||
message SCSkillResetCountNtf {
|
||
int32 reset_count = 1; //重置次数
|
||
}
|
||
|
||
//请求技能压制冲榜活动数据
|
||
message CSRushActivityReq { //project game //RouteRule game
|
||
int32 rush_type = 1;
|
||
}
|
||
|
||
message SCRushActivityAck {
|
||
int32 error = 1; //错误码
|
||
int32 fight_count = 2; //战斗次数
|
||
int32 self_rank = 3; //自己排名
|
||
int32 self_level = 4; //自己
|
||
uint64 end_time = 5; //结束时间
|
||
bool challeng_reward = 6; //挑战奖励是否领取
|
||
bool rank_reward = 7; //排名奖励是否领取
|
||
repeated RushRankTop3 top_data = 8; //这里只发送前10名
|
||
int32 rush_type = 9; //冲榜类型
|
||
}
|
||
|
||
//请求技能压制冲榜活动奖励
|
||
message CSRushActivityRewardReq { //project game //RouteRule game
|
||
int32 reward_type = 1; //1:挑战奖励,2:排名奖励
|
||
int32 rush_type = 2; //冲榜类型
|
||
}
|
||
message SCRushActivityRewardAck {
|
||
int32 error = 1; //错误码
|
||
int32 reward_type = 2; //1:挑战奖励,2:层数奖励
|
||
repeated KeyValueType item_list = 3; //奖励列表
|
||
int32 rush_type = 4; //冲榜类型
|
||
}
|
||
|
||
message CSRushSkillActivityRankReq { //project game|rank //RouteRule game
|
||
int32 page = 1;
|
||
int32 rush_type = 2; //冲榜类型
|
||
}
|
||
message SCRushSkillActivityRankAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 page = 2;
|
||
repeated RushRankTop3 top_data = 3;
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////fashion
|
||
//时装数据变更通知
|
||
message SCFashionDataNtf{
|
||
repeated int32 fashion_up_list = 4; //穿戴的时装(不为空表示发生数据变更)
|
||
repeated int32 fashion_list = 5; //时装列表
|
||
}
|
||
//穿戴时装(替换)
|
||
message CSFashionUpReq { //project game //RouteRule game
|
||
repeated int32 fashion_cfg_id = 1; //时装ID
|
||
}
|
||
message SCFashionUpAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//卸下时装
|
||
message CSFashionDownReq{ //project game //RouteRule game
|
||
repeated int32 fashion_cfg_id = 1; //时装ID
|
||
}
|
||
message SCFashionDownAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//时装合成
|
||
message CSFashionComposeReq{ //project game //RouteRule game
|
||
int32 paper_cfg_id = 1; //图纸ID
|
||
}
|
||
message SCFashionComposeAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//时装图纸分解
|
||
message CSFashionPaperDecomposeReq { //project game //RouteRule game
|
||
int32 paper_cfg_id = 1; //图纸ID
|
||
}
|
||
message SCFashionPaperDecomposeAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //分解获得的资源数据
|
||
}
|
||
|
||
// 时装升级
|
||
message CSFashionUpLvlReq { //project game //RouteRule game
|
||
int32 fashion_cfg_id = 1; //时装ID
|
||
}
|
||
|
||
// 时装升级 返回
|
||
message SCFashionUpLvlAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
// 时装变更 (時裝升級 時裝洗練)
|
||
message SCFashionNtf {
|
||
repeated RoleFashionData fashion_data = 1; //时装ID
|
||
repeated KeyValueType lvs = 2; //套装数据 key套装id,value 等级
|
||
}
|
||
|
||
// 时装洗练
|
||
message CSFashionResetAttrReq { //project game //RouteRule game
|
||
bool enter =1;
|
||
int32 fashion_cfg_id = 2; //时装ID
|
||
|
||
}
|
||
// 时装洗练 返回
|
||
message SCFashionResetAttrAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
/////////////////////////////////////////////////////////AOI相关
|
||
//获取详细信息(用来显示详细面板使用),例如,隶属公会,个性签名,战斗力等详细信息
|
||
message CSGetOtherPlayerDetailInfoReq{ //project game|social //RouteRule game
|
||
uint64 uid = 1; //请求查看的Uid
|
||
uint64 t_uid = 2; //被查看Uid
|
||
}
|
||
message SCGetOtherPlayerDetailInfoAck{ //project game
|
||
uint64 uid = 1; //ID
|
||
int32 error = 2; //错误码
|
||
ViewRoleInfo target_info = 3; //目标信息
|
||
}
|
||
//获取玩家简介信息,显示头像名称相关,不包括详细信息(本服玩家)
|
||
message CSGetOtherPlayerBriefInfoReq { //project game //RouteRule game
|
||
repeated uint64 player_list = 1;//角色列表
|
||
int32 type = 2;
|
||
}
|
||
message SCGetOtherPlayerBriefInfoAck {
|
||
repeated CommonPlayerBriefInfo brief_info = 1;
|
||
int32 type = 2;
|
||
}
|
||
//挑战召唤物
|
||
message CSPlayerChallengeSummonReq { //project game|battleboss //RouteRule game
|
||
uint64 uid = 1; //挑战玩家uid
|
||
uint64 challenge_boss_uid = 2; //挑战的bossUid
|
||
int32 boss_summon_idx = 3;
|
||
FightRoleInfo fight_info = 4; //召唤boss玩家信息(服务器使用)
|
||
}
|
||
message SCPlayerChallengeSummonAck { //project game
|
||
int32 error = 1; //错误码
|
||
WorldBossContentInfo boss_info = 2; //世界boss信息
|
||
}
|
||
message SCPlayerChallengeSummonNtf {
|
||
uint64 self_uid = 1;
|
||
repeated FightRoleInfo fight_list = 2; //其他玩家列表
|
||
uint64 boss_uid = 3;
|
||
int32 self_change_play_id = 4;
|
||
int32 summon_boss_type = 5;
|
||
}
|
||
//血量上报
|
||
message CSPlayerChallengeHpReq { //project game|battleboss //RouteRule game
|
||
int32 damage_hp = 1; //玩家对boss的伤害
|
||
uint64 action_uid = 2; //服务器使用客户端不使用
|
||
}
|
||
//boss血量变更通知
|
||
message SCPlayerChallengeHpNtf {
|
||
int32 cur_boss_hp = 1; //当前boss血量
|
||
}
|
||
//离开boss场景
|
||
message CSPlayerLeaveChallengeReq{ //project game|battleboss //RouteRule game
|
||
}
|
||
//离开boss场景通知
|
||
message SCPlayerLeaveChallengeNtf{ //project game
|
||
uint64 uid = 1; //离开的挑战玩家uid
|
||
}
|
||
message SCPlayerChallengeResultNtf {
|
||
int32 result = 1; //1表示升级,2表示超时战场结束
|
||
}
|
||
//获取WorldBoss列表
|
||
message CSPlayerWorldBossListReq { //project game|battleboss //RouteRule game
|
||
}
|
||
message SCPlayerWorldBossListAck { //project game
|
||
repeated WorldBossContentInfo world_boss_list = 1; //世界boss列表
|
||
}
|
||
|
||
message SCPlayerWorldBossRandNtf { //project game
|
||
int32 error = 1; //错误码(有可能会出现背包满的提示错误,这个时候也是需要显示奖励的)
|
||
WorldBossRandPointInfo point_info = 2; //世界boss rand点数据
|
||
}
|
||
|
||
//请求增加挑战次数
|
||
message CSAddRoleChallengeCountReq { //project game //RouteRule game
|
||
bool watch_ad = 1; //看广告增加次数
|
||
}
|
||
|
||
message SCAddRoleChallengeCountAck {
|
||
int32 error = 1;
|
||
}
|
||
|
||
message SCRoleMapChangeNtf {
|
||
int32 world_boss_count = 1; //世界boss挑战次数
|
||
repeated int32 world_boss_challenge_list = 2; //当天挑战过的世界bossid列表(id*10 + summonidx)
|
||
int32 watch_ad_count = 3; //看广告增加次数
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////chat相关
|
||
message CSChatMessageReq{ //project game|social|guild //RouteRule game
|
||
int32 type = 1;//消息类型1私人聊天,2世界频道聊天
|
||
ChatMessageInfo message = 2;//消息内容
|
||
uint64 target_id = 3;//私人聊天,好友聊天时发送的目标玩家
|
||
ChatPlayerBriefInfo from_id = 4;//私人聊天,好友聊天时发送的来源玩家
|
||
}
|
||
message SCChatMessageAck{
|
||
int32 error = 1; //错误码
|
||
uint64 target_id = 2; //目标玩家(离线玩家ID)
|
||
ChatMessageInfo message = 3;//消息内容
|
||
int32 type = 4;
|
||
}
|
||
|
||
message SCChatMessageNtf{
|
||
repeated MessageContentInfo msg_list = 1;
|
||
repeated SystemMessage s_msg_list = 2;
|
||
//int32 type = 1;//消息类型1私人聊天,2世界频道聊天
|
||
//ChatMessageInfo message = 2;//消息内容
|
||
//ChatPlayerBriefInfo from_id = 3;//消息来源玩家
|
||
//uint64 target_id = 4;//targetId显示该私聊信息
|
||
}
|
||
//私聊玩家在线状态刷新
|
||
message CSChatPlayerStateReq { //project game|social //RouteRule game
|
||
repeated uint64 target_id_list = 1; //私聊玩家列表
|
||
}
|
||
message SCChatPlayerStateAck { //project game
|
||
repeated PlayerStateInfo state_list = 1; //在线状态列表
|
||
}
|
||
//获取某个玩家的离线信息
|
||
message CSChatOfflineMsgReq { //project game|db //RouteRule game
|
||
uint64 target_id = 1; //目标玩家(离线玩家ID)
|
||
uint64 self_id = 2;
|
||
}
|
||
message SCChatOfflineMsgAck { //project game
|
||
int32 error = 1; //错误码
|
||
ChatPlayerBriefInfo target_player = 2; //私聊目标
|
||
repeated ChatMessageInfo msg_list = 3; //私聊消息列表
|
||
}
|
||
//玩家上线时获取离线玩家列表
|
||
message SCChatOfflinePlayerNtf {
|
||
RoleChat offline_player_list = 1;
|
||
}
|
||
|
||
message SCSystemMessageNtf{ //project game
|
||
repeated SystemMessage sys_msg = 1;//公告消息
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////battle处理
|
||
//收益相关处理(online/offline)
|
||
message CSPlayerIncomeReq{ //project game //RouteRule game //confirm
|
||
}
|
||
message SCPlayerIncomeAck{
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //分解获得的资源数据
|
||
}
|
||
//挑战boss奖励
|
||
message CSPlayerBossRewardReq{ //project game //RouteRule game //confirm
|
||
uint32 challenge_time = 1; //该boss挑战时间
|
||
uint32 map_id = 2;
|
||
uint32 map_level = 3;
|
||
uint64 record_time_stamp = 4;
|
||
}
|
||
message SCPlayerBossRewardAck{
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //奖励
|
||
uint64 server_time_stamp = 3; //服务器时间戳
|
||
}
|
||
//通知客户端需要保存战斗过程记录
|
||
message SCPlayerBattleRecordDetailSaveNtf {
|
||
uint64 battle_record_uid = 1; //战斗唯一ID
|
||
uint64 record_time_stamp = 2;
|
||
}
|
||
//保存战报详细信息
|
||
message CSPlayerBattleRecordDetailSaveReq { //project battlerecord //RouteRule battlerecord
|
||
uint64 battle_record_uid = 1; //战斗唯一ID 回传服务器下发的唯一ID
|
||
string battle_record = 2;
|
||
string open_id = 3;
|
||
}
|
||
message SCPlayerBattleRecordDetailSaveAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//获取战报详细信息
|
||
message CSPlayerBattleRecordDetailReq { //project battlerecord //RouteRule battlerecord
|
||
uint64 battle_record_uid = 1; //战斗唯一ID 回传服务器下发的唯一ID
|
||
string open_id = 2;
|
||
}
|
||
message SCPlayerBattleRecordDetailAck {
|
||
int32 error = 1; //错误码
|
||
uint64 battle_record_uid = 2; //战斗唯一ID 回传服务器下发的唯一ID
|
||
string battle_record = 3;
|
||
}
|
||
//获取战报信息
|
||
message CSPlayerBattleRecordReq { //project game|rank //RouteRule game
|
||
int32 record_type = 1;
|
||
repeated uint32 param_list = 2;
|
||
}
|
||
message SCPlayerBattleRecordAck { //project game
|
||
int32 error = 1;
|
||
repeated BattleRecordInfo record_list = 2;
|
||
}
|
||
|
||
message SCPlayerBattleDataChangeNtf{
|
||
uint64 last_income_time = 1; //上一次领取收益时间,0表示未初始化
|
||
uint32 map_level = 2; //当前场景ID,默认为1
|
||
uint32 map_id = 3; //当前地图ID,默认为1
|
||
uint64 max_income_time = 4; //最大收益累计时间
|
||
QuickBattleData quick_battle = 5; //快速战斗
|
||
uint32 reward_map_count = 6; //未领取奖励次数
|
||
uint32 fruit_income_reward_point = 7;
|
||
}
|
||
//获取小地图排名
|
||
message CSGetMapRankReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCGetMapRankAck {
|
||
int32 error = 1; //错误码
|
||
uint32 self_rank = 2; //自身排名
|
||
uint32 total_rank = 3; //当前参加排名的人数
|
||
repeated RankPlayerInfo top_player_list = 4; //排名前3玩家
|
||
}
|
||
|
||
//获取本局战斗状态(胜利/失败)
|
||
message CSBattleResultReq {
|
||
ActorPosition actor_pos = 1; //单位所在位置
|
||
}
|
||
message SCBattleResultAck {
|
||
int32 error = 1; //错误码,发送的战斗数据有误
|
||
bool win_lose = 2; //true胜利,false失败
|
||
}
|
||
|
||
message CSQuickBattleIncomeReq { //project game //RouteRule game
|
||
bool watch_ad = 1; //观看广告
|
||
}
|
||
|
||
message SCQuickBattleIncomeAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //快速挂机获得的资源列表
|
||
}
|
||
|
||
//boss战斗开始
|
||
message CSBattleBossFightReq{ //project game //RouteRule game
|
||
}
|
||
message SCBattleBossFightAck{
|
||
int32 error = 1;
|
||
int32 left_cd_time = 2; //剩余刷新时间s
|
||
repeated KeyValueType factor_list = 3; //衰减系数
|
||
}
|
||
|
||
//请求地图冲榜活动数据
|
||
message CSMapActivityReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCMapActivityAck {
|
||
int32 error = 1; //错误码
|
||
int32 map_score = 2; //推图积分
|
||
int32 bag_score = 3; //礼包积分
|
||
int32 self_rank = 4; //自己排名
|
||
int32 self_level = 5; //自己推图关卡
|
||
uint64 end_time = 6; //结束时间
|
||
bool challeng_reward = 7; //挑战奖励是否领取
|
||
bool rank_reward = 8; //排名奖励是否领取
|
||
repeated RushRankTop3 top_data = 9; //前3名
|
||
uint32 rush_level = 10; //活动推图关卡
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////恶魔协会
|
||
//恶魔刷新(会根据当前的时间做刷新消耗,客户端需要判断是否进行刷新,进行确认)
|
||
message CSEvilRefreshReq { //project game //RouteRule game
|
||
bool b_force = 1; //点击刷新方式刷新evil
|
||
bool watch_ad = 2; //观看广告
|
||
}
|
||
message SCEvilRefreshAck {
|
||
int32 error = 1; //错误码
|
||
repeated int32 pos_idx_list = 2;
|
||
}
|
||
message SCEvilChangeNtf {
|
||
BattleEvilData evil_info = 1;
|
||
repeated KeyValueType add_item_list = 2; //恶魔提升获得奖励
|
||
}
|
||
//恶魔挑战(该位置上有boss则挑战,如果已经死亡的boss表示花费道具消除CD)
|
||
message CSEvilChallengeReq { //project game //RouteRule game
|
||
int32 pos_idx = 1; //位置
|
||
}
|
||
message SCEvilChallengeAck {
|
||
int32 error = 1; //错误码
|
||
int32 pos_idx = 2; //返回客户端发送位置
|
||
int32 add_count = 3;
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////task相关
|
||
message CSGetTaskRewardReq { //project game //RouteRule game
|
||
uint32 task_id = 1; //领取奖励的任务ID
|
||
}
|
||
message SCGetTaskRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //任务奖励
|
||
}
|
||
message SCTaskChangeNtf {
|
||
repeated TaskData task_change_list = 1; //当前改变状态的任务
|
||
KeyValueType daily_task_score = 2; //活跃度/活跃度对应的奖励,按位处理(完成任务累加的积分)
|
||
KeyValueType week_task_score = 3;
|
||
uint64 latest5_hour_time = 4;
|
||
uint64 latest_week5_hour_time = 5;
|
||
}
|
||
message CSGetTaskScoreRewardReq { //project game //RouteRule game
|
||
int32 reward_type = 1; //1daily 2week
|
||
int32 reward_idx = 2; //奖励索引
|
||
}
|
||
message SCGetTaskScoreRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //任务奖励
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////道场
|
||
message SCArenaNtf {
|
||
int32 challenge_count = 1; //剩余挑战次数
|
||
int32 reward_count = 2; //剩余积分获得次数
|
||
int32 buy_count = 3; //剩余购买次数
|
||
int32 win_count = 4; //胜利次数
|
||
int32 total_count = 5; //总挑战次数
|
||
int32 score = 6; //积分
|
||
repeated int32 self_hero_list = 7;
|
||
int32 season_id = 8; //当前赛季
|
||
uint64 season_end_time = 9; //当前赛季结束时间
|
||
uint64 next_season_start_time = 10; //下个赛季开启时间
|
||
int32 minTopScore = 11; //入榜最小积分
|
||
}
|
||
message SCArenaChangeNtf {
|
||
int32 challenge_count = 1; //剩余挑战次数
|
||
int32 reward_count = 2; //剩余积分获得次数
|
||
int32 buy_count = 3; //剩余购买次数
|
||
int32 win_count = 4; //胜利次数
|
||
int32 total_count = 5; //总挑战次数
|
||
int32 score = 6; //积分
|
||
int32 season_id = 7; //当前赛季
|
||
int32 rank_idx = 8; //当前排名
|
||
int32 win_streak_count = 9; //连胜
|
||
int32 fail_streak_count = 10; //连败
|
||
int32 minTopScore = 11; //入榜最小积分
|
||
}
|
||
//获取道场数据
|
||
message CSArenaReq { //project game //RouteRule game
|
||
}
|
||
//挑战(获得对手)
|
||
message CSArenaMatchReq{ //project game //RouteRule game
|
||
repeated int32 hero_list = 1;
|
||
}
|
||
message SCArenaMatchAck {
|
||
int32 error = 1; //错误码
|
||
FightRoleInfo fight_info = 2; //对方玩家信息
|
||
}
|
||
//挑战结果(失败/成功)
|
||
message CSArenaResultReq { //project game //RouteRule game //confirm
|
||
int32 fight_result = 1; //0失败,1成功
|
||
}
|
||
message SCArenaResultAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2; //奖励列表
|
||
int32 old_score = 3;
|
||
int32 cur_score = 4;
|
||
}
|
||
//购买挑战次数
|
||
message CSArenaBuyCountReq{ //project game //RouteRule game
|
||
int32 buy_count = 1;
|
||
}
|
||
message SCArenaBuyCountAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//获取赛季排行榜
|
||
message CSArenaRankListReq { //project game //RouteRule game
|
||
int32 rank_type = 1; //1上赛季,0本赛季
|
||
int32 start_idx = 2; //1[1-10] 2[11-20] 3[21-30] ...
|
||
}
|
||
message SCArenaRankListAck {
|
||
int32 error = 1; //错误码
|
||
repeated ArenaRankInfo rank_list = 2;
|
||
int32 self_rank = 3;
|
||
int32 rank_type = 4;//1上赛季,0本赛季
|
||
int32 start_idx = 5;
|
||
int32 self_rank_score = 6; //赛季对应自身排名积分
|
||
}
|
||
|
||
//请求英灵殿冲榜活动数据
|
||
message CSArenaActivityReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCArenaActivityAck {
|
||
int32 error = 1; //错误码
|
||
int32 fight_count = 2; //战斗次数
|
||
int32 self_rank = 3; //自己排名
|
||
int32 self_level = 4; //自己层数
|
||
uint64 end_time = 5; //结束时间
|
||
bool challeng_reward = 6; //挑战奖励是否领取
|
||
bool rank_reward = 7; //排名奖励是否领取
|
||
repeated RushRankTop3 top_data = 8; //前3名
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////mail
|
||
//获取邮件数据
|
||
message CSMailListReq { //project game //RouteRule game
|
||
}
|
||
message SCMailListAck {
|
||
int32 total_mail_count = 1; //当前邮件总数量
|
||
repeated MailContent mail_list = 2;
|
||
}
|
||
//邮件读取
|
||
message CSMailReadReq { //project game //RouteRule game
|
||
repeated int32 mail_id_list = 1;
|
||
}
|
||
message SCMailReadAck{
|
||
int32 error = 1; //错误码
|
||
}
|
||
//获取邮件附件
|
||
message CSMailRewardReq { //project game //RouteRule game
|
||
repeated int32 mail_id_list = 1;
|
||
}
|
||
message SCMailRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2; //附件资源
|
||
}
|
||
//删除已读邮件
|
||
message CSMailDelReadReq { //project game //RouteRule game
|
||
}
|
||
message SCMailDelReadAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//邮件信息变更通知
|
||
message SCMailChangeNtf {
|
||
repeated KeyValueType mail_state_list = 1; //变更状态邮件列表
|
||
repeated int32 del_mail_list = 2; //被删除邮件列表
|
||
repeated MailContent add_mail_list = 3; //新增加邮件
|
||
int32 total_mail_count = 4; //当前邮件总数量
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////competition赛季玩法
|
||
//赛季玩法信息获取(根据赛季不同类型获取对应信息)
|
||
message CSCompetitionReq { //project game //RouteRule game
|
||
int32 competition_id = 1; //对应赛季ID
|
||
}
|
||
message SCCompetitionNtf {
|
||
CompetitionInfo competition_data = 1; //对应赛季信息
|
||
uint64 next_competition_time = 2; //下个赛季开启时间
|
||
IdolSeasonData data = 3; //偶像季数据
|
||
}
|
||
message SCCompetitionAck {
|
||
int32 error = 1; //错误码
|
||
int32 competition_id = 2; //对应赛季ID
|
||
}
|
||
//第二赛季上交道具获取积分
|
||
message CSCompetitionScoreReq { //project game //RouteRule game
|
||
repeated KeyValueType item_list = 1; //key是配置id,不是动态生成的id
|
||
}
|
||
message SCCompetitionScoreAck {
|
||
int32 error = 1; //错误码
|
||
int32 com_score = 2; //当前玩家积分
|
||
int32 next_com_score = 4; //下一档积分差距
|
||
int32 self_rank = 5; //当前排名
|
||
int32 total_rank = 6; //总人数
|
||
int32 section_id = 7; //当前预计获得的宝箱奖励
|
||
int32 last_com_score = 8; //低一档最大积分(玩家积分)
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////Shop操作 //紧急需求,迁移版署版本,商店功能后续废弃重做
|
||
message CSShopBuyItemReq { //project game //RouteRule game
|
||
int32 goods_id = 1;
|
||
int32 goods_num = 2;
|
||
int32 goods_type = 3;
|
||
}
|
||
|
||
message SCShopBuyItemAck {
|
||
int32 error = 1;
|
||
int32 goods_id = 2;
|
||
int32 goods_type = 3;
|
||
int32 cur_num = 4;
|
||
uint64 cur_buy_time = 5;
|
||
repeated KeyValueType item_list = 6;
|
||
}
|
||
|
||
message CSShopInfoReq { //project game //RouteRule game
|
||
int32 goods_type = 1;
|
||
}
|
||
|
||
message SCShopInfoAck {
|
||
int32 error = 1;
|
||
ShopData shop_data = 2; //商店信息
|
||
}
|
||
|
||
message CSShopRefreshReq { //project game //RouteRule game
|
||
int32 goods_type = 1;
|
||
}
|
||
|
||
message SCShopRefreshAck {
|
||
int32 error = 1;
|
||
ShopData shop_data = 2; //商店信息
|
||
}
|
||
|
||
//红包兑换请求
|
||
message CSRedBagExchangeReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCRedBagExchangeAck {
|
||
int32 error = 1;
|
||
repeated KeyValueType reward = 2;
|
||
}
|
||
/////////////////////////////////////////////////////////social好友
|
||
message CSFriendReq { //project game //RouteRule game
|
||
int32 type = 1; //1我关注 2我的粉丝 3屏蔽列表
|
||
}
|
||
message SCFriendAck {
|
||
int32 type = 1; //操作类型
|
||
int32 total_count = 2; //总数量
|
||
int32 total_limit = 3; //数量上限
|
||
repeated uint64 uid_list = 4; //玩家ID列表
|
||
}
|
||
|
||
//添加关注(添加好友,这边添加好友是单向的)
|
||
message CSFriendAddReq { //project game //RouteRule game
|
||
uint64 add_uid = 1; //关注玩家uid
|
||
}
|
||
//成功关注玩家后,会有添加关注玩家的简介信息
|
||
message SCFriendAddAck {
|
||
int32 error = 1;
|
||
CommonPlayerBriefInfo brief_info = 2; //玩家简介信息
|
||
}
|
||
//其他玩家关注自己时,添加到自己的粉丝列表中
|
||
message SCFriendAddNtf {
|
||
CommonPlayerBriefInfo brief_info = 1; //玩家简介信息
|
||
}
|
||
|
||
//取消关注
|
||
message CSFriendDelReq { //project game //RouteRule game
|
||
uint64 del_uid = 1; //取消关注玩家uid
|
||
}
|
||
message SCFriendDelAck {
|
||
int32 error = 1;
|
||
uint64 del_uid = 2;
|
||
}
|
||
//其他玩家取消关注该玩家时,从自己的粉丝列表中移除
|
||
message SCFriendDelNtf {
|
||
uint64 del_uid = 1;
|
||
}
|
||
|
||
//添加/删除屏蔽名单(添加和删除同一条协议,不在黑名单中加入黑名单,在黑名单中移除黑名单)
|
||
message CSFriendBlackReq { //project game //RouteRule game
|
||
uint64 black_uid = 1; //屏蔽玩家uid
|
||
}
|
||
message SCFriendBlackAck {
|
||
int32 error = 1;
|
||
CommonPlayerBriefInfo brief_info = 2; //玩家简介信息
|
||
}
|
||
|
||
//获取推荐好友列表
|
||
message CSFriendRecommendReq { //project game //RouteRule game
|
||
}
|
||
message SCFriendRecommendAck {
|
||
int32 error = 1;
|
||
repeated CommonPlayerBriefInfo brief_info_list = 2; //推荐好友列表
|
||
}
|
||
message SCFriendRecommendNtf {
|
||
repeated CommonPlayerBriefInfo brief_info_list = 2; //推荐好友列表
|
||
}
|
||
|
||
//搜索玩家
|
||
message CSFriendSearchReq { //project game //RouteRule game
|
||
string target_name = 1; //搜索玩家昵称
|
||
}
|
||
message SCFriendSearchAck {
|
||
int32 error = 1;
|
||
repeated CommonPlayerBriefInfo brief_info_list = 2;
|
||
}
|
||
|
||
|
||
/////////////////////////////////////////////////////////common
|
||
//小红点消息通知
|
||
message SCRoleRedNtf {
|
||
RoleRed red = 1;
|
||
}
|
||
//设置新手引导
|
||
message CSRoleGuideNtf { //project game //RouteRule game
|
||
int32 guide_id = 2;//新手引导步骤ID
|
||
}
|
||
//剧情上线通知
|
||
message SCRoleStoryNtf {
|
||
repeated int64 Story = 1; //播放过的剧情
|
||
KeyValueType map_cart = 2; //地图卡通
|
||
repeated int64 StoryNpc = 3; //播放过的剧情Npc好感度
|
||
}
|
||
//剧情
|
||
message CSRoleStoryReq { //project game //RouteRule game
|
||
KeyValueType story_id = 1; //播放的剧情
|
||
}
|
||
message SCRoleStoryAck {
|
||
int32 error = 1; //错误码
|
||
KeyValueType story_id = 2; //播放的剧情
|
||
repeated KeyValueType story_rewards = 3; //剧情奖励物品
|
||
}
|
||
//剧情NPC好感度
|
||
message CSRoleStoryNpcReq { //project game //RouteRule game
|
||
KeyValueType story_npc_id = 1; //NPC好感度格式: NpcId+好感度
|
||
}
|
||
message SCRoleStoryNpcAck {
|
||
int32 error = 1; //错误码
|
||
KeyValueType story_npc_id = 2; //NPC好感度格式: NpcId+好感度
|
||
}
|
||
//领取送NPC物品的奖励
|
||
message CSRoleGetSendNpcItemRewardReq { //project game //RouteRule game
|
||
uint64 item_id = 1;
|
||
uint32 item_num = 2;
|
||
int32 reward_id = 3;
|
||
string reward_param = 4;
|
||
}
|
||
message SCRoleGetSendNpcItemRewardAck {
|
||
int32 error = 1; //错误码
|
||
int32 reward_id = 2;
|
||
KeyValueType npc_heart = 3; //NPC好感度格式: NpcId+好感度
|
||
repeated KeyValueType story_rewards = 4; //剧情奖励物品
|
||
}
|
||
|
||
//大地图动画
|
||
message CSNewMapCartoonReq{ //project game //RouteRule game //confirm
|
||
KeyValueType map_cart = 1; //地图卡通 key:动画ID, value:状态
|
||
}
|
||
message SCNewMapCartoonAck{
|
||
int32 error = 1; //错误码
|
||
KeyValueType map_cart = 2; //地图卡通 key:动画ID, value:状态
|
||
}
|
||
|
||
//强制引导
|
||
message CSCompulsoryGuidanceReq { //project game //RouteRule game
|
||
int32 story_id = 1; //引导步骤ID
|
||
int32 status = 2; //引导状态
|
||
}
|
||
message SCCompulsoryGuidanceAck {
|
||
int32 error = 1; //错误码
|
||
int32 story_id = 2; //引导步骤ID
|
||
int32 status = 3; //引导状态
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////活动
|
||
//签到信息请求
|
||
message CSSignUpInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCSignUpInfoAck {
|
||
int32 error = 1; //错误码
|
||
SignUp sign_info = 2; //签到活动
|
||
int32 cur_sign_day = 3; //当前可签到天
|
||
int64 next_sign_time = 4; //下次签到时间
|
||
}
|
||
|
||
//请求签到
|
||
message CSSignUpReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCSignUpAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType day_list = 2; //日奖励
|
||
repeated KeyValueType accu_list = 3; //累计奖励
|
||
repeated KeyValueType double_list = 4; //双倍奖励
|
||
int64 next_sign_time = 5; //下次签到时间
|
||
SignUp sign_info = 6; //签到活动
|
||
int32 cur_sign_day = 7; //当前可签到天
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////爬塔功能
|
||
message CSClimbingTowerInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCClimbingTowerInfoAck {
|
||
int32 now_tower_level = 1; //当前可通关层数
|
||
int64 pass_time = 2; //当前爬塔通过时间戳
|
||
repeated FriendTowerInfo infos = 3; //好友/工会通关信息,自己可通关 + 2
|
||
}
|
||
|
||
message CSFriendPassTowerInfoReq { //project game //RouteRule game
|
||
int32 begin_index = 1; //开始层数
|
||
int32 end_index = 2; //结束层数
|
||
}
|
||
|
||
message SCFriendPassTowerInfoAck {
|
||
repeated FriendTowerInfo infos = 1; //好友/工会通关信息,自己可通关 + 2
|
||
}
|
||
|
||
message MinTowerInfo{
|
||
int32 tower_level = 1; //塔层数
|
||
int32 fight_power = 2; //通过战力
|
||
CommonPlayerBriefInfo brief = 3; //玩家昵称
|
||
uint64 record_time = 4;
|
||
uint32 battle_time = 5;
|
||
}
|
||
|
||
message CSTowerLevelMinFightPowerReq { //project game //RouteRule game
|
||
int32 tower_level = 1;
|
||
}
|
||
|
||
message SCTowerLevelMinFightPowerAck {
|
||
MinTowerInfo min_tower_info = 1;
|
||
}
|
||
|
||
message SCTowerLevelMinFightPowerNtf{
|
||
repeated MinTowerInfo min_tower_info = 1; //我的通关 + 3 层的最小通关战力
|
||
}
|
||
|
||
message CSClimbingTowerBeginReq { //project game //RouteRule game
|
||
int32 tower_level = 1; //塔层数
|
||
}
|
||
|
||
message SCClimbingTowerBeginAck {
|
||
int32 error = 1; //错误码
|
||
int32 tower_level = 2; //塔层数
|
||
repeated KeyValueType factor_list = 3; //衰减系数
|
||
}
|
||
|
||
message CSClimbingTowerEndReq { //project game //RouteRule game //confirm
|
||
int32 tower_level = 1; //塔层数
|
||
int32 loading_time = 2; //战斗loading时间
|
||
uint64 record_time_stamp = 3;
|
||
}
|
||
|
||
message SCClimbingTowerEndAck {
|
||
int32 error = 1; //错误码
|
||
int32 tower_level = 2; //塔层数 成功 则tower_level+1
|
||
FriendTowerInfo pass_info = 3; //则tower_level + 3层通过的好友/工会成员等
|
||
int64 pass_time = 4; //通过时间
|
||
repeated KeyValueType reward_list = 5; //爬塔奖励
|
||
repeated KeyValueType ex_reward_list = 6; //爬塔额外奖励
|
||
}
|
||
|
||
message CSClimbingTowerRankReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCClimbingTowerRankAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType64 rank_list = 2; //爬塔列表 Key:uid ,Value:rank
|
||
int32 self_rank = 3; //自己的rank
|
||
}
|
||
|
||
//上线爬塔冲榜数据请求
|
||
message CSOnlineRushInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCOnlineRushInfoAck {
|
||
repeated RushActivityData rush_data = 1; //冲榜数据
|
||
}
|
||
|
||
//请求爬塔冲榜活动数据
|
||
message CSTowerActivityReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCTowerActivityAck {
|
||
int32 error = 1; //错误码
|
||
int32 fight_count = 2; //战斗次数
|
||
int32 self_rank = 3; //自己排名
|
||
int32 self_level = 4; //自己层数
|
||
uint64 end_time = 5; //结束时间
|
||
bool challeng_reward = 6; //挑战奖励是否领取
|
||
bool rank_reward = 7; //排名奖励是否领取
|
||
repeated RushRankTop3 top_data = 8; //前3名
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////公会操作相关
|
||
//创建公会请求
|
||
message CSBuildGuildReq{ //project game|guild //RouteRule game
|
||
string guild_name = 1; //公会名字
|
||
int32 guild_badge = 2; //公会徽章
|
||
uint64 uid = 3; //创建人ID//服务器填写
|
||
}
|
||
//创建公会返回
|
||
message SCBuildGuildAck{ //project game
|
||
int32 error = 1; //错误码
|
||
GuildBrief guild_brief = 2; //公会ID
|
||
}
|
||
//解散公会请求
|
||
message CSDisbandGuildReq{ //project game|guild //RouteRule game
|
||
uint64 uid = 1; //创建人ID//服务器填写
|
||
uint64 guild_id = 2; //公会ID//服务器填写
|
||
}
|
||
//解散公会返回
|
||
message SCDisbandGuildAck{ //project game
|
||
int32 error = 1; //错误码
|
||
}
|
||
//申请加入公会请求
|
||
message CSApplyGuildReq{ //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //公会ID
|
||
uint64 uid = 2; //UID
|
||
int32 level = 3; //玩家等级//服务器填写
|
||
int32 op_type = 4; //操作类型:1加入公会,2取消加入公会
|
||
}
|
||
//申请加入公会返回给请求人
|
||
message SCApplyGuildAck{ //project game
|
||
int32 error = 1; //错误码
|
||
uint64 guild_id = 2; //公会ID
|
||
int32 op_type = 3; //操作类型:1加入公会,2取消加入公会
|
||
}
|
||
//退出公会请求
|
||
message CSQuitGuildReq{ //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //公会ID//服务器填写
|
||
uint64 uid = 2; //UID//服务器填写
|
||
}
|
||
//退出公会返回
|
||
message SCQuitGuildAck{ //project game
|
||
int32 error = 1; //错误码
|
||
}
|
||
//请求踢除公会成员请求
|
||
message CSKickGuildMemberReq{ //project game|guild //RouteRule game
|
||
uint64 uid = 1; //成员ID
|
||
uint64 guild_id = 2; //公会ID//服务器填写
|
||
uint64 pre_uid = 3; //会长ID
|
||
}
|
||
//请求踢除公会成员返回
|
||
message SCKickGuildMemberAck{ //project game
|
||
int32 error = 1; //错误码
|
||
uint64 uid = 2; //成员ID
|
||
}
|
||
message SCKickGuildMemberNtf { //project game|social
|
||
uint64 guild_id = 1; //成员ID
|
||
uint64 uid = 2; //UID
|
||
}
|
||
//提降玩家官职请求
|
||
message CSChangeMemberTitleReq{ //project game|guild //RouteRule game
|
||
uint64 uid = 1; //成员ID
|
||
int32 title = 2; //成员头衔
|
||
uint64 pre_uid = 3; //成员ID//服务器填写
|
||
uint64 guild_id = 4; //公会ID//服务器填写
|
||
}
|
||
//提降玩家官职返回
|
||
message SCChangeMemberTitleAck{ //project game
|
||
int32 error = 1; //错误码
|
||
uint64 uid = 2; //成员ID
|
||
int32 title = 3; //成员头衔
|
||
}
|
||
message SCChangeMemberTitleNtf{ //project game|social
|
||
uint64 guild_id = 1; //公会ID
|
||
repeated KeyValueType64 uid_list = 2;
|
||
uint64 uid = 3; //服务器使用
|
||
}
|
||
//公会改名
|
||
message CSGuildRenameReq { //project game|guild //RouteRule game
|
||
string guild_name = 1;
|
||
uint64 guild_id = 2; //服务器填写
|
||
uint64 uid = 3; //服务器填写
|
||
}
|
||
message SCGuildRenameAck { //project game
|
||
int32 error = 1;
|
||
string guild_name = 2;
|
||
}
|
||
//公会公告修改
|
||
message CSGuildReNoticeReq { //project game|guild //RouteRule game
|
||
string guild_notice = 1; //新公告
|
||
uint64 guild_id = 2; //公会ID//服务器填写
|
||
uint64 uid = 3; //操作人ID//服务器填写
|
||
}
|
||
message SCGuildReNoticeAck { //project game
|
||
int32 error = 1;
|
||
string guild_notice = 2;
|
||
}
|
||
//设置公会招募信息
|
||
message CSSetGuildInfoReq { //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //公会ID
|
||
int32 guild_badge = 2; //公会徽章
|
||
int32 join_level = 3; //加入等级
|
||
int32 join_type = 4; //加入类型
|
||
string recruit_notice = 5; //招募公告
|
||
uint64 uid = 6; //UID
|
||
}
|
||
message SCSetGuildInfoAck{ //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_badge = 2; //公会徽章
|
||
int32 join_level = 3; //加入等级
|
||
int32 join_type = 4; //加入类型
|
||
string recruit_notice = 5; //招募公告
|
||
}
|
||
//公会日志请求
|
||
message CSGuildLogInfoReq { //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //服务器填写
|
||
int64 log_time = 2;
|
||
}
|
||
message SCGuildLogInfoAck { //project game
|
||
repeated GuildLog log = 1;
|
||
bool is_end = 2;
|
||
}
|
||
|
||
//公会申请列表请求
|
||
message CSGuildApplyDataReq { //project game|guild //RouteRule game
|
||
uint64 uid = 1; //成员ID//服务器填写
|
||
uint64 guild_id = 2; //公会ID
|
||
}
|
||
//公会申请列表返回
|
||
message SCGuildApplyDataAck { //project game
|
||
int32 error = 1;
|
||
repeated uint64 uid_list = 2;
|
||
}
|
||
//处理入会申请
|
||
message CSApplyInfoHandleReq{ //project game|guild //RouteRule game
|
||
KeyValueType64 apply = 1; //key:UID value:1:同意, 2:拒绝
|
||
int32 handle_type = 2; //0:处理apply: 1:全部接受,2:全部拒绝
|
||
uint64 guild_id = 3; //公会ID//服务器填写
|
||
uint64 uid = 4; //成员ID//服务器填写
|
||
repeated uint64 uid_list = 5; //处理的uid列表
|
||
}
|
||
//处理入会申请返回
|
||
message SCApplyInfoHandleAck{ //project game
|
||
int32 error = 1;
|
||
uint64 guild_id = 2; //公会ID
|
||
int32 handle_type = 3; //0:处理apply: 1:全部接受,2:全部拒绝
|
||
repeated KeyValueType64 uid_list = 4; //处理Key:UID, Value:1:同意,2:拒绝,3、未处理 value2:ErrorCode
|
||
}
|
||
|
||
message SCApplyInfoHandleNtf { //project social|game
|
||
int32 apply_result = 1; //申请结果 1:通过 2:拒绝
|
||
uint64 uid = 2; //申请人ID//服务器使用
|
||
uint64 guild_id = 3; //公会ID
|
||
GuildNotifyData data = 4; //公会信息列表
|
||
}
|
||
|
||
//查看其他公会信息
|
||
message CSGuildInfoReq{ //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //公会ID
|
||
uint64 uid = 2; //申请人ID//服务器使用
|
||
}
|
||
//返回其他公会信息
|
||
message SCGuildInfoAck{ //project game
|
||
int32 error = 1;
|
||
GuildBase guild_Base = 2; //公会信息 //公会日志太大了,单独请求,这里不发
|
||
repeated MemberBrief mem_brief = 3; //公会成员基础信息
|
||
bool apply = 4; //是否申请
|
||
}
|
||
|
||
//查看自己公会信息
|
||
message CSGetSelfGuildInfoReq{ //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //公会ID//服务器填写
|
||
uint64 uid = 2; //UID//服务器填写
|
||
}
|
||
//返回自己公会信息
|
||
message SCGetSelfGuildInfoAck{ //project game
|
||
int32 error = 1;
|
||
GuildBase guild_Base = 2; //公会信息 //公会日志太大了,单独请求,这里不发
|
||
repeated MemberBrief mem_brief = 3; //公会成员基础信息
|
||
RoleGuild role_guild = 4; //公会个人活跃度
|
||
uint32 total_active = 5; //近7天公会活跃度
|
||
bool apply_list = 6; //公会是否有申请
|
||
int32 guild_battle_state = 7; //公会战状态(1:未开始,2:进行中,3:已结束)
|
||
uint64 next_state_begin = 8; //下阶段开始时间
|
||
uint32 cp_num = 9; //公会贡献点
|
||
uint32 guild_battle_rank = 10; //公会贡献点名次
|
||
}
|
||
|
||
//公会成员信息请求
|
||
message CSGuildMemberInfoReq { //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //公会ID
|
||
repeated uint64 uid_list = 2; //公会成员列表
|
||
}
|
||
message SCGuildMemberInfoAck { //project game
|
||
int32 error = 1; //错误码
|
||
uint64 guild_id = 2; //公会ID
|
||
repeated MemberInfo member_data = 3; //成员信息,玩家公会数据+简介
|
||
}
|
||
//请求推荐公会
|
||
message CSRecommendGuildInfoReq{ //project game|guild //RouteRule game
|
||
uint64 uid = 1; //服务器使用
|
||
int32 req_count = 2; //请求次数//服务器使用
|
||
}
|
||
//返回推荐的公会
|
||
message SCRecommendGuildInfoAck{ //project game
|
||
int32 error = 1; //错误码
|
||
repeated GuildNotifyData data = 2; //公会信息列表
|
||
}
|
||
|
||
message CSOnlinePlayerGuildReq { //project game|guild //RouteRule game
|
||
uint64 uid = 1; //uid//服务器填写
|
||
uint64 guild_id = 2; //公会ID//服务器填写
|
||
}
|
||
|
||
//玩家上线时,公会服务器返回数据
|
||
message SCOnlinePlayerGuildAck { //project game
|
||
GuildNotifyData data = 1; //公会简介
|
||
int64 next_join = 2; //下次加入公会时间
|
||
bool boss = 3; //true:有可挑战boss
|
||
repeated MessageContentInfo msgRec = 4;
|
||
bool in_guild_battle = 5; //true公会战入口开启,false公会战入口关闭
|
||
}
|
||
|
||
message CSSearchGuildReq { //project game|guild //RouteRule game
|
||
string search_string = 1; //查找公会(名字或者ID)
|
||
uint64 uid = 2; //uid//服务器填写
|
||
}
|
||
|
||
message SCSearchGuildAck { //project game
|
||
int32 error = 1; //错误码
|
||
string search_string = 2; //查找公会
|
||
repeated GuildNotifyData data = 3; //公会简介信息
|
||
}
|
||
|
||
message SCQuitGuildCDNtf {
|
||
int32 quit_num = 1; //退出次数
|
||
int64 next_join = 2; //下次加入时间
|
||
}
|
||
|
||
//公会boss数据请求
|
||
message CSGuildBossInfoReq { //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //公会ID//服务器填写
|
||
}
|
||
message SCGuildBossInfoAck { //project game
|
||
int32 error = 1; //错误码
|
||
repeated GuildBossData boss_data = 2;
|
||
repeated KeyValueType boss_fight = 3; //boss战斗次数/key:bossID value:当前战斗过的次数
|
||
uint64 elite_boss_cd = 4; //精英bossCD时间
|
||
}
|
||
//公会boss战斗日志请求
|
||
message CSGuildBossLogReq { //project game|guild //RouteRule game
|
||
uint64 log_time = 1; //log时间
|
||
uint32 boss_id = 2; //战斗的BOSSID
|
||
uint64 guild_id = 3; //公会ID//服务器填写
|
||
}
|
||
message SCGuildBossLogAck { //project game
|
||
int32 error = 1; //错误码
|
||
uint32 boss_id = 2; //战斗的BOSSID
|
||
repeated GuildBossLogDetial logs = 3;
|
||
bool is_end = 4; //true:结束,false:未结束
|
||
}
|
||
|
||
//挑战boss
|
||
message CSGuildBossChallengeReq { //project game|guild //RouteRule game //confirm
|
||
uint32 boss_id = 1; //战斗的BOSSID
|
||
uint32 damage = 2; //对boss造成的伤害
|
||
uint32 battle_time = 3; //对boss造成的伤害
|
||
uint64 guild_id = 4; //公会ID//服务器填写
|
||
uint64 uid = 5; //服务器填写
|
||
}
|
||
message SCGuildBossChallengeAck { //project game
|
||
int32 error = 1; //错误码
|
||
uint32 boss_id = 2; //战斗的BOSSID
|
||
repeated KeyValueType reward = 3; //获得的奖励
|
||
uint32 damage = 4; //造成的伤害
|
||
}
|
||
//召唤boss
|
||
message CSGuildBossSummonReq { //project game|guild //RouteRule game
|
||
uint32 boss_id = 1; //召唤的BOSSid
|
||
uint64 guild_id = 2; //公会ID//服务器填写
|
||
uint64 uid = 3; //uid
|
||
}
|
||
message SCGuildBossSummonAck { //project game
|
||
int32 error = 1; //错误码
|
||
uint32 boss_id = 2; //召唤的BOSSid
|
||
uint32 guild_active = 3; //公会活跃度
|
||
int64 fight_start = 4; //战斗结束
|
||
int32 fight_count = 5; //当前boss剩余次数
|
||
}
|
||
//大事馈赠奖励查看
|
||
message CSGuildBossExtraRewardReq { //project game|guild //RouteRule game
|
||
uint32 boss_id = 1; //BossId
|
||
uint64 guild_id = 2; //公会ID//服务器填写
|
||
}
|
||
message SCGuildBossExtraRewardAck { //project game
|
||
int32 error = 1; //错误码
|
||
uint32 boss_id = 2; //BossId
|
||
uint32 max_dam = 3; //最大伤害
|
||
CommonPlayerBriefInfo brief = 4; //玩家简介
|
||
}
|
||
//公会改名NTF
|
||
message SCGuildNameChangeNtf { //project game
|
||
uint64 guild_id = 1; //公会ID
|
||
string guild_name = 2; //公会名字
|
||
uint64 uid = 3; //UID//服务器用
|
||
}
|
||
//公会boss刷新
|
||
message SCGuildBossChangeNtf { //project game
|
||
uint64 guild_id = 1; //公会ID
|
||
uint32 boss_id = 2; //bossID
|
||
int32 fight_count = 3; //boss剩余次数
|
||
}
|
||
|
||
//公会战
|
||
|
||
//公会战开始/结束时刻通知
|
||
message SCGuildBattleStageNtf {
|
||
bool in_guild_battle = 1; //true公会战入口开启,false公会战入口关闭
|
||
}
|
||
|
||
//公会战贡献点Req
|
||
message CSGuildBattleCPRankReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCGuildBattleCPRankAck {
|
||
int32 error = 1; //
|
||
repeated GuildBattleCP cp_list = 2; //贡献点列表
|
||
int32 self_guild_rank = 3; //自己公会贡献点名次
|
||
int32 self_guild_cp = 4; //自己公会贡献点
|
||
}
|
||
|
||
//公会战对阵表
|
||
message CSGuildBattleCountPartReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCGuildBattleCountPartAck {
|
||
int32 error = 1; //错误码
|
||
uint64 champion = 2; //冠军
|
||
int32 cur_stge = 3; //当前阶段
|
||
uint64 tournament_prepare = 4; //8-4准备时间
|
||
uint64 tournament_begin = 5; //8-4开始
|
||
uint64 tournament_end = 6; //8-4结束
|
||
uint64 semifinals_prepare = 7; //4-2准备时间
|
||
uint64 semifinals_begin = 8; //4-2开始
|
||
uint64 semifinals_end = 9; //4-2结束
|
||
uint64 finals_prepare = 10; //2-1准备时间
|
||
uint64 finals_begin = 11; //2-1开始
|
||
uint64 finals_end = 12; //2-1结束
|
||
repeated CountTableData data = 13; //对阵表数据
|
||
}
|
||
|
||
//mvp 数据请求
|
||
message CSGuildBattleMvpInfoReq { //project game //RouteRule game
|
||
int32 guild_battle_idx = 1; //公会战索引(1 / 2,3 / 4,5,6,7)
|
||
}
|
||
|
||
message SCGuildBattleMvpInfoAck {
|
||
int32 error = 1;
|
||
int32 guild_battle_idx = 2; //公会战索引(1 / 2,3 / 4,5,6,7)
|
||
repeated GuildBattleDetail detail = 3; //公会战 公会的详细信息
|
||
CountTableData count_part = 4; //对阵信息
|
||
}
|
||
|
||
message CSGuildBattleMvpDetailReq { //project game //RouteRule game
|
||
int32 mvp_type = 1; //mvp类型(1:积分 2:击杀)
|
||
int32 req_rank = 2; //请求的起始排名
|
||
int32 guild_battle_idx = 3; //公会战索引(1 / 2,3 / 4,5,6,7)
|
||
}
|
||
|
||
message SCGuildBattleMvpDetailAck {
|
||
int32 mvp_type = 1; //mvp类型(1:积分 2:击杀)
|
||
repeated GuildBattleMvp mvp = 2; //mvp列表(目前就2个)
|
||
int32 req_rank = 3; //请求的起始排名
|
||
int32 guild_battle_idx = 4; //公会战索引(1 / 2,3 / 4,5,6,7)
|
||
}
|
||
//公会战结束
|
||
|
||
//获取对阵双方信息(打开界面时的信息)
|
||
message CSGuildBattleInfoReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1; //1 |2,3 |4,5,6 7(7场战斗中的一场)
|
||
uint64 self_guild_id = 2; //用来判断是参赛者还是旁观者 服务器使用
|
||
}
|
||
message SCGuildBattleInfoAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
uint64 battle_start_time = 3;
|
||
uint64 battle_end_time = 4;
|
||
repeated KeyValueType64 battle_data_list = 5; //[key:guildid, value:score,value2:daochang, value3:badge,strval:name]
|
||
GuildBattleSelfData self_data = 6; //个人信息
|
||
GuildPosIdxData challenge_pos_data = 7; //当前战位信息
|
||
int32 buy_challenge_num = 8; //购买的战斗次数(跟人走)
|
||
}
|
||
//设置自动购买,复活CD(数据变更通过SCGuildBattleInfoNtf)
|
||
message CSGuildBattleSettingReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
bool auto_challenge = 2;
|
||
bool auto_reborn = 3;
|
||
uint64 self_guild_id = 4; //服务器使用
|
||
}
|
||
message SCGuildBattleSettingAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
GuildBattleSelfData self_data = 3; //个人信息
|
||
}
|
||
//挑战次数手动购买
|
||
message CSGuildBattleBuyChallengeReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
uint64 self_guild_id = 2; //服务器使用
|
||
}
|
||
message SCGuildBattleBuyChallengeAck { //project game
|
||
int32 error = 1; //错误码
|
||
GuildBattleSelfData self_data = 2; //个人信息
|
||
int32 buy_challenge_num = 3; //购买的战斗次数(跟人走)
|
||
int32 guild_battle_idx = 4; //
|
||
}
|
||
//手动重置复活CD
|
||
message CSGuildBattleRebornReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
uint64 self_guild_id = 2; //服务器使用
|
||
}
|
||
message SCGuildBattleRebornAck { //project game
|
||
int32 error = 1; //错误码
|
||
GuildBattleSelfData self_data = 2; //个人信息
|
||
int32 guild_battle_idx = 3; //
|
||
}
|
||
//战斗排行(1积分排行/2击杀排行)
|
||
message CSGuildBattleRankListReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
int32 rank_type = 2; //1积分,2击杀
|
||
int32 page_idx = 3;
|
||
}
|
||
message SCGuildBattleRankListAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 page_idx = 2;
|
||
int32 guild_battle_idx = 3;
|
||
repeated GuildBattleRank rank_data_list = 4;
|
||
repeated KeyValueType64 battle_data_list = 5; //[key:guildid, value:score,value2:daochang, value3:badge,strval:name]
|
||
bool is_finish = 6; //当前战斗是否结束
|
||
bool win_guild = 7; //胜利公会ID
|
||
int32 rank_type = 8; //1积分,2击杀
|
||
}
|
||
//获取位置信息,上限20
|
||
message CSGuildBattlePosIdxListReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
repeated int32 pos_idx_list = 2;
|
||
}
|
||
message SCGuildBattlePosIdxListAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
repeated GuildPosIdxData pos_data_list = 3; //占位信息
|
||
}
|
||
//占领记录
|
||
message CSGuildBattleLogReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
uint64 begin_time = 2;
|
||
}
|
||
message SCGuildBattleLogAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
repeated GuildBattleLog log_list = 3;
|
||
bool is_end = 4;
|
||
}
|
||
//挑战占位
|
||
message CSGuildBattleChallengeReq { //project game //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
int32 pos_idx = 2;
|
||
}
|
||
message SCGuildBattleChallengeAck {
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
int32 pos_idx = 3;
|
||
FightRoleInfo fight_info = 4; //对方玩家信息
|
||
GuildPosIdxData challenge_pos_data = 5;
|
||
repeated KeyValueType fight_buff_list = 6; //buff列表
|
||
repeated KeyValueType self_buff_list = 7; //自己的buff列表
|
||
GuildBattleSelfData self_data = 8; //个人信息 服务器使用
|
||
int32 buy_challenge_num = 9; //购买的战斗次数(跟人走)
|
||
}
|
||
message SCGuildBattleChallengeNtf {
|
||
int32 guild_battle_idx = 1;
|
||
int32 pos_idx = 2;
|
||
GuildBattleSelfData self_data = 3; //个人信息
|
||
int32 buy_challenge_num = 4; //购买的战斗次数(跟人走)
|
||
}
|
||
message CSGuildBattleChallengeResultReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
int32 battle_time = 2; //战斗持续时间
|
||
int32 pos_idx = 3;
|
||
uint64 pos_uid = 4; //对手id 玩家赋值uid,机器人赋值机器人id(做校验使用)
|
||
bool battle_result = 5; //true胜利 false失败
|
||
uint64 self_guild_id = 6; //服务器使用
|
||
CommonPlayerBriefInfo bf_info = 7; //服务器使用
|
||
}
|
||
message SCGuildBattleChallengeResultAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
}
|
||
//数据变更通知
|
||
message SCGuildBattleDataChangeNtf { //project game|social
|
||
uint64 ntf_uid = 1;
|
||
int32 guild_battle_idx = 2;
|
||
GuildPosIdxData pos_data = 3;
|
||
GuildBattleSelfData self_data = 4; //个人信息
|
||
bool from_social = 5; //服务器使用 来自social的消息
|
||
}
|
||
//保持战斗状态消息通知(60s内未收到消息判定为失败)
|
||
message CSGuildBattleChallengePingReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
int32 pos_idx = 2; //正在挑战的占位
|
||
}
|
||
message SCGuildBattleChallengePingAck { //project game
|
||
int32 error = 1; //错误码
|
||
}
|
||
//客户端刷新最新pk数据(道场数量/积分数量)
|
||
message CSGuildBattlePKDataReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
}
|
||
message SCGuildBattlePKDataAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
repeated KeyValueType64 battle_data_list = 3; //
|
||
}
|
||
//购买战斗buff
|
||
message CSGuildBattleBuyBuffReq { //project game|guild //RouteRule game
|
||
int32 guild_battle_idx = 1;
|
||
repeated int32 buff_id_list = 2;
|
||
}
|
||
message SCGuildBattleBuyBuffAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 guild_battle_idx = 2;
|
||
GuildBattleSelfData self_data = 3; //个人信息
|
||
}
|
||
|
||
message GuildDemonRank {
|
||
uint64 uuid = 1; //公会ID/玩家ID
|
||
int32 rank = 2; //排名
|
||
uint64 damage = 3; //战斗伤害
|
||
string guild_name = 4; //公会名
|
||
int32 guild_badge = 5; //公会徽章
|
||
}
|
||
|
||
message GuildDemonGuildRank {
|
||
GuildNotifyData data = 1; //公会信息列表
|
||
int32 rank = 2; //排名
|
||
uint64 damage = 3; //战斗伤害
|
||
}
|
||
|
||
//公会魔王信息请求
|
||
message CSGuildDemonInfoReq { //project game|guild //RouteRule game
|
||
uint64 guild_id = 1; //服务器用
|
||
uint64 uid = 2; //服务器用
|
||
}
|
||
message SCGuildDemonInfoAck { //project game
|
||
int32 demon_id = 1; //当天的公会bossID
|
||
uint64 next_up_time = 2; //下一次升级时间
|
||
int32 demon_level = 3; //魔王等级
|
||
uint64 end_time = 4; //当天挑战结束时间
|
||
int32 left_fight_count = 5; //剩余战斗次数
|
||
int32 left_buy_count = 6; //剩余战斗次数
|
||
uint64 total_boss_damage = 7; //boss总伤害
|
||
uint64 damage = 8; //我的战斗伤害
|
||
uint64 mvp_damage = 9; //mvp伤害
|
||
CommonPlayerBriefInfo mvp_brief = 10; //玩家昵称
|
||
repeated DemonDamage rank_list = 11; //公会玩家排名列表
|
||
uint64 req_uid = 12; //请求的玩家ID
|
||
}
|
||
|
||
//公会魔王战斗请求
|
||
message CSGuildDemonFightReq { //project game|guild //RouteRule game
|
||
int32 demon_id = 1;
|
||
uint64 damage = 2; //总伤害
|
||
}
|
||
message SCGuildDemonFightAck { //project game
|
||
int32 error = 1;
|
||
int32 demon_id = 2; //bossid
|
||
int32 fight_count = 3; //剩余战斗次数
|
||
uint64 total_damage = 4; //boss总伤害
|
||
uint64 self_damage = 5; //自己总伤害
|
||
repeated KeyValueType base_reward = 6; //战斗基础奖励
|
||
}
|
||
|
||
//请求公会魔王公会排名
|
||
message CSGuildDemonGuildRankReq { //project game|guild //RouteRule game
|
||
int32 page = 1; //页签
|
||
uint64 guild_id = 2; //公会ID
|
||
uint64 uid = 3; //服务器用
|
||
}
|
||
message SCGuildDemonGuildRankAck { //project game
|
||
int32 error = 1;
|
||
int32 page = 2; //页签
|
||
repeated GuildDemonGuildRank rank_list = 3; //列表
|
||
GuildDemonGuildRank self_guild = 4; //自己公会
|
||
bool is_end = 5; //是否结束
|
||
uint64 uid = 6; //服务器用
|
||
}
|
||
|
||
//请求公会魔王最强公会个人排名
|
||
message CSGuildDemonMVPRankReq { //project game|guild //RouteRule game
|
||
int32 page = 1; //页签
|
||
uint64 guild_id = 2; //
|
||
uint64 uid = 3; //服务器用
|
||
}
|
||
message SCGuildDemonMVPRankAck { //project game
|
||
int32 error = 1;
|
||
int32 page = 2; //页签
|
||
repeated GuildDemonRank rank_list = 3; //列表
|
||
GuildDemonRank self_guild_mvp = 4; //自己公会MVP
|
||
CommonPlayerBriefInfo mvp_brief = 5; //玩家昵称
|
||
bool is_end = 6; //是否结束
|
||
uint64 uid = 7; //服务器用
|
||
}
|
||
|
||
//请求购买公会魔王战斗次数
|
||
message CSGuildDemonBuyFightCountReq { //project game //RouteRule game
|
||
int32 fight_count = 1; //购买次数
|
||
}
|
||
message SCGuildDemonBuyFightCountAck { //project game
|
||
int32 error = 1; //
|
||
int32 left_buy_count = 2; //剩余购买次数
|
||
int32 left_fight_count = 3; //剩余战斗
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////pet
|
||
//宠物数据变更(客户端需要判断数据库不为空时才处理)
|
||
message SCPetChangeNtf {
|
||
repeated PetData pet_list = 1; //变更/增加
|
||
repeated uint32 del_pet_list = 2; //删除宠物id列表
|
||
repeated PetManualST pet_manual_list = 3; //宠物图鉴
|
||
repeated AssistIdxData assist_pet_list = 4; //援助宠物列表
|
||
}
|
||
//宠物升级
|
||
message CSPetLevelUpReq { //project game //RouteRule game
|
||
uint32 pet_id = 1;
|
||
}
|
||
message SCPetLevelUpAck {
|
||
int32 error = 1; //错误码
|
||
uint32 pet_id = 2;
|
||
}
|
||
//宠物进阶
|
||
message CSPetAdvanceReq { //project game //RouteRule game
|
||
uint32 pet_id = 1; //需要进阶的宠物
|
||
repeated uint32 pet_list = 2; //进阶消耗材料
|
||
}
|
||
message SCPetAdvanceAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//宠物领悟
|
||
message CSPetSkillLevelUpReq { //project game //RouteRule game
|
||
uint32 pet_id = 1;
|
||
uint32 cost_pet_id = 2;
|
||
}
|
||
message SCPetSkillLevelUpAck {
|
||
int32 error = 1; //错误码
|
||
uint32 pet_id = 2;
|
||
int32 skill_id = 3;
|
||
}
|
||
//宠物分解
|
||
message CSPetDecomposeReq { //project game //RouteRule game
|
||
repeated uint32 pet_id_list = 1;
|
||
}
|
||
message SCPetDecomposeAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType item_list = 2; //分解返回材料
|
||
}
|
||
//获取羁绊列表数据
|
||
message CSPetBondListReq { //project game //RouteRule game
|
||
}
|
||
message SCPetBondListAck {
|
||
int32 error = 1; //错误码
|
||
repeated PetBondData bond_list = 2;
|
||
repeated KeyValueType64Str uid_name_list = 3; //名字列表
|
||
}
|
||
//玩家主动操作导致的羁绊数据变更(进阶,分解)
|
||
message SCPetBondListNtf {
|
||
repeated PetBondData bond_list = 1;
|
||
}
|
||
//获取激活羁绊所需的宠物列表(援助列表,好友/公会)
|
||
message CSPetBondAssistListReq { //project game //RouteRule game
|
||
int32 bond_cfg_id = 1; //key:1品质 2进阶等级 3特殊属性
|
||
}
|
||
message SCPetBondAssistListAck {
|
||
int32 error = 1;
|
||
int32 bond_cfg_id = 2;
|
||
repeated AssistData bond_pet_list = 3; //
|
||
}
|
||
//宠物羁绊激活
|
||
message CSPetBondActiveReq { //project game //RouteRule game
|
||
repeated PetBondData bond_data_list = 1;
|
||
}
|
||
message SCPetBondActiveAck {
|
||
int32 error = 1; //错误码
|
||
repeated PetBondData bond_data_list = 2;
|
||
repeated KeyValueType64Str uid_name_list = 3; //名字列表
|
||
}
|
||
//宠物援助
|
||
message CSPetAssistReq { //project game //RouteRule game
|
||
repeated uint32 pet_id_list = 1;
|
||
}
|
||
message SCPetAssistAck {
|
||
int32 error = 1; //错误码
|
||
repeated AssistIdxData assist_list = 2; //援助宠物
|
||
}
|
||
//上阵/下阵
|
||
message CSPetBattleReq { //project game //RouteRule game
|
||
repeated KeyValueType battle_list = 1;
|
||
}
|
||
message SCPetBattleAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//图鉴奖励获取
|
||
message CSPetManualRewardReq { //project game //RouteRule game
|
||
int32 pet_cfg_id = 1;
|
||
int32 pet_adv_level = 2; //进阶等级奖励
|
||
int32 pet_id = 3;
|
||
}
|
||
message SCPetManualRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2;
|
||
int32 pet_cfg_id = 3;
|
||
}
|
||
//最早收集到宠物最高进阶等级获取
|
||
message CSPetAdvAchievementReq { //project game //RouteRule game
|
||
int32 pet_cfg_id = 1;
|
||
}
|
||
message SCPetAdvAchievementAck {
|
||
int32 error = 1; //错误码
|
||
int32 pet_cfg_id = 2;
|
||
CommonPlayerBriefInfo brief = 3; //玩家昵称
|
||
uint64 achievement_time = 4; //达成该成就时的时间
|
||
}
|
||
|
||
//请求宠物冲榜活动数据
|
||
message CSPetActivityReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCPetActivityAck {
|
||
int32 error = 1; //错误码
|
||
int32 self_rank = 2; //自己排名
|
||
int32 self_score = 3; //自己分数
|
||
uint64 end_time = 4; //结束时间
|
||
bool challeng_reward = 5; //挑战奖励是否领取
|
||
bool rank_reward = 6; //排名奖励是否领取
|
||
repeated RushPetData top_data = 7; //这里只发送前10名
|
||
}
|
||
|
||
message CSPetActivityRankReq { //project game|rank //RouteRule game
|
||
int32 page = 1;
|
||
}
|
||
message SCPetActivityRankAck { //project game
|
||
int32 error = 1; //错误码
|
||
int32 page = 2;
|
||
repeated RushPetData top_data = 3;
|
||
}
|
||
|
||
//宠物印记(装备)
|
||
//印记数据变更
|
||
message SCPetEquipDataNtf {
|
||
repeated PetEquipData pet_equip_list = 1; //宠物印记
|
||
bool ignore = 2; //true不弹框提示,false正常提示
|
||
}
|
||
//印记升级/进阶
|
||
message CSPetEquipLevelUpReq { //project game //RouteRule game
|
||
uint32 pet_equip_id = 1; //动态生成的id
|
||
}
|
||
message SCPetEquipLevelUpAck {
|
||
int32 error = 1; //错误码
|
||
PetEquipData pet_equip = 2;
|
||
}
|
||
//印记启用
|
||
message CSPetEquipUpReq { //project game //RouteRule game
|
||
uint32 pet_id = 1;
|
||
repeated KeyValueType slot_list = 2; //key=slotindex val=petequipid
|
||
}
|
||
message SCPetEquipUPAck {
|
||
int32 error = 1; //错误码
|
||
uint32 pet_id = 2;
|
||
repeated KeyValueType slot_list = 3; //key=slotindex val=petequipid
|
||
}
|
||
//印记卸下
|
||
message CSPetEquipDownReq { //project game //RouteRule game
|
||
uint32 pet_id = 1;
|
||
int32 slot_index = 2;
|
||
}
|
||
message SCPetEquipDownAck {
|
||
int32 error = 1; //错误码
|
||
uint32 pet_id = 2;
|
||
int32 slot_index = 3;
|
||
}
|
||
|
||
//宠物系统优化
|
||
//背包界面只下发必要数据,后续通过打开宠物界面主动获取
|
||
message CSPetDetailInfoReq { //project game //RouteRule game
|
||
repeated uint32 pet_id_list = 1; //宠物动态ID
|
||
}
|
||
message SCPetDetailInfoAck {
|
||
repeated PetData pet_info_list = 1; //宠物详细信息
|
||
}
|
||
////宠物契约
|
||
//契约槽位数据变更通知
|
||
message SCPetQiyueDataNtf {
|
||
int32 hero_id = 1; //伙伴(hero)动态id
|
||
PetQiyueInfo qiyue_info = 2; //当前伙伴跟随的宠物契约信息
|
||
}
|
||
//契约槽位解锁
|
||
message CSPetQiyueSlotUnlockReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //伙伴(hero)动态id
|
||
}
|
||
message SCPetQiyueSlotUnlockAck {
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //伙伴(hero)动态id
|
||
}
|
||
//契约操作添加宠物(替换也使用该协议)
|
||
message CSPetQiyueSlotInReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //伙伴(hero)动态id
|
||
int32 slot_idx = 2; //1-4
|
||
uint32 pet_id = 3; //放入契约槽位宠物(宠物动态id)
|
||
}
|
||
message SCPetQiyueSlotInAck {
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //伙伴(hero)动态id
|
||
int32 slot_idx = 3; //1-4
|
||
}
|
||
//卸载契约槽宠物
|
||
message CSPetQiyueSlotOutReq { //project game //RouteRule game
|
||
int32 hero_id = 1; //伙伴(hero)动态id
|
||
int32 slot_idx = 2; //1-4,0表示一键卸下该伙伴跟随宠物的觉醒材料宠物
|
||
}
|
||
message SCPetQiyueSlotOutAck {
|
||
int32 error = 1; //错误码
|
||
int32 hero_id = 2; //伙伴(hero)动态id
|
||
int32 slot_idx = 3; //1-4,0表示一键卸下该伙伴跟随宠物的觉醒材料宠物
|
||
}
|
||
//契约总属性面板中出阵宠物契约属性
|
||
message CSPetQiyueBattlePetAttrReq { //project game //RouteRule game
|
||
}
|
||
message SCPetQiyueBattlePetAttrAck {
|
||
int32 error = 1; //错误码
|
||
repeated ActorAttrType actor_list = 2; //
|
||
}
|
||
|
||
//宠物传承
|
||
message CSPetDataExchangeReq { //project game //RouteRule game
|
||
uint32 source_pet_id = 1; //传承的宠物
|
||
uint32 target_pet_id = 2; //被传承的宠物
|
||
}
|
||
message SCPetDataExchangeAck {
|
||
int32 error = 1; //错误码
|
||
uint32 source_pet_id = 2; //传承的宠物
|
||
uint32 target_pet_id = 3; //被传承的宠物
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////远征之门
|
||
message SCExpeditionChangeNtf {
|
||
BattleExpedition expedition_info = 1;
|
||
bool day_reset = 2;
|
||
}
|
||
|
||
//点击挑战按钮
|
||
message CSExpeditionChallengePreReq { //project game //RouteRule game
|
||
int32 expedition_type = 1; //区域ID
|
||
}
|
||
message SCExpeditionChallengePreAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//客户端上报hp,sp,并获取奖励(buff)
|
||
message CSExpeditionChallengeReq { //project game //RouteRule game
|
||
int32 expedition_type = 1;
|
||
int32 battle_level = 2;
|
||
repeated BattleExpeditionActor hero_info_list = 3; //英雄血量
|
||
repeated BattleExpeditionActor boss_change_hp_list = 4; //扣血列表(客户端扣血顺序逻辑帧)
|
||
int32 battle_time = 5; //战斗持续时长(单位秒)
|
||
int32 battle_idx = 6; //1,2,3
|
||
int32 flag = 7; //1战斗开始,2刷新,3战斗结束
|
||
}
|
||
message SCExpeditionChallengeAck{
|
||
int32 error = 1; //错误码
|
||
int32 flag = 2; //1战斗开始,2刷新,3战斗结束 4(胜利的方式战斗结束服务之赋值)
|
||
repeated int32 buff_list = 3; //buff列表
|
||
}
|
||
//战斗结束后选择buff id
|
||
message CSExpeditionSelectBuffReq { //project game //RouteRule game
|
||
int32 select_buff_id = 1; //配置表id
|
||
}
|
||
message SCExpeditionSelectBuffAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//领取区域地图宝箱奖励(未领取在隔天重置时统一发送邮件)
|
||
message CSExpeditionRewardReq { //project game //RouteRule game
|
||
int32 expedition_type = 1; //区域地图id(类型)
|
||
int32 boss_idx = 2; //为0表示一键领取
|
||
}
|
||
message SCExpeditionRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
//设置上阵玩家
|
||
message CSExpeditionBattleHeroReq { //project game //RouteRule game
|
||
repeated int32 battle_hero_list = 1;
|
||
}
|
||
message SCExpeditionBattleHeroAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//求助其他玩家(自己英雄死亡发送求助操作)
|
||
message CSExpeditionCallForHelpReq { //project game //RouteRule game
|
||
uint64 assist_help_uid = 1; //为0表示公会求助,如果不存在公会返回错误
|
||
}
|
||
message SCExpeditionCallForHelpAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//对方回应求助操作,通知给求助玩家
|
||
message SCExpeditionCallForHelpNtf {
|
||
int32 assist_state = 1; //1成功求助
|
||
CommonPlayerBriefInfo brief = 2;
|
||
}
|
||
//救助 求助的玩家
|
||
message CSExpeditionHelpReq { //project game //RouteRule game
|
||
uint64 be_helped_uid = 1;
|
||
int32 msg_type = 2; //来自私聊还是来自公会(1私聊 3公会)
|
||
uint64 help_msg_send_time = 3; //求助消息发送时的时间
|
||
}
|
||
message SCExpeditionHelpAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
//勇士积分排行
|
||
message CSExpeditionScoreRankListReq { //project game //RouteRule game
|
||
int32 start_idx = 1;//1[1-10] 2[11-20] 3[21-30] ...
|
||
}
|
||
message SCExpeditionScoreRankListAck {
|
||
int32 error = 1; //错误码
|
||
repeated ExpeditionRankInfo rank_list = 2;
|
||
ExpeditionRankInfo self_rank_info = 3;
|
||
int32 start_idx = 4;
|
||
}
|
||
//远征之门通关地图奖励获取
|
||
message CSExpeditionPassRewardReq { //project game //RouteRule game
|
||
int32 expedition_type = 1; //关卡地图区域Type
|
||
}
|
||
message SCExpeditionPassRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
/////////////////////////////////////////////////////////精彩活动
|
||
message SCActivitiesStartupNtf {
|
||
repeated ActivitiesData open_activity_list = 1; //开启的活动列表
|
||
//精彩活动
|
||
uint64 cur_day_end_time = 2; //当前天结束时间戳
|
||
//活动数据
|
||
repeated ActivitiesDetailData activity_data_list = 3;
|
||
|
||
//首充大礼包时间(达到给定数值记录时间)
|
||
uint64 first_charge_time = 4; //非0表示可以进行奖励领取
|
||
int32 first_charge_reward_state = 5;
|
||
//超值礼包数据
|
||
repeated ActivitiesUnlockRechargeData unlock_charge_list = 6;
|
||
}
|
||
//开启的活动通知
|
||
message SCActivitiesOpenListNtf {
|
||
repeated ActivitiesData activity_list = 1; //开启的活动列表
|
||
}
|
||
//活动数据变更通知
|
||
message SCActivitiesChangeNtf {
|
||
repeated ActivitiesDetailData activity_data_list = 1;
|
||
uint64 cur_day_end_time = 2; //当前天结束时间戳
|
||
}
|
||
//连续登录奖励获取
|
||
//14日目标任务
|
||
//百元礼包
|
||
//每日累计充值
|
||
message CSActivitiesRewardReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
int32 param = 2; //领取day对应天的奖励 | 任务id
|
||
int32 reward_num = 3; //兑换次数
|
||
bool watch_ad =4; //看广告
|
||
}
|
||
message SCActivitiesRewardAck {
|
||
int32 activity_id = 1;
|
||
int32 error = 2; //错误码
|
||
repeated KeyValueType reward_item_list = 3; //奖励物品
|
||
}
|
||
//积分奖励获取
|
||
message CSActivitiesScoreRewardReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
int32 box_idx = 2; //配置表中的唯一id
|
||
}
|
||
message SCActivitiesScoreRewardAck {
|
||
int32 activity_id = 1;
|
||
int32 error = 2; //错误码
|
||
repeated KeyValueType reward_item_list = 3; //奖励物品
|
||
}
|
||
///支付活动相关
|
||
//开启超值礼包通知
|
||
message SCActivitiesDiscountsNtf {
|
||
repeated ActivitiesUnlockRechargeData discount_data_list = 1;
|
||
}
|
||
//获取首充奖励
|
||
message CSActivitiesFirstChargeRewardReq { //project game //RouteRule game
|
||
}
|
||
message SCActivitiesFirstChargeRewardAck {
|
||
int32 error = 1;
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
message SCActivitiesFirstChargeChangeNtf {
|
||
int32 first_charge_reward_state = 1; //获取奖励状态
|
||
uint64 first_charge_time = 2; //非0表示可以进行奖励领取
|
||
}
|
||
//获取全局服务器数据
|
||
message CSActivitiesCollectionServerDataReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
}
|
||
message SCActivitiesCollectionServerDataAck {
|
||
int32 error = 1; //错误码
|
||
int32 activity_id = 2;
|
||
repeated KeyValueType data_list = 3; //全局相关数据
|
||
}
|
||
//消耗道具获得好感度(3.8活动)
|
||
message CSActivitiesLikabilityRewardReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
int32 item_cfg_id = 2; //道具
|
||
int32 likability_level = 3; //道具对应档位
|
||
}
|
||
message SCActivitiesLikabilityRewardAck {
|
||
int32 error = 1; //错误码
|
||
int32 activity_id = 2;
|
||
repeated KeyValueType reward_item_list = 3; //奖励物品
|
||
}
|
||
|
||
message CSActivitiesExchangeReq { //project game //RouteRule game
|
||
int32 reward_idx = 1;
|
||
int32 activity_id = 2;
|
||
repeated ExchangeInfo data = 3;
|
||
}
|
||
|
||
message SCActivitiesExchangeAck { //project game //RouteRule game
|
||
int32 error = 1;
|
||
int32 reward_idx = 2;
|
||
int32 activity_id = 3;
|
||
int32 exchange_time = 4; //剩余兑换次数
|
||
}
|
||
|
||
//集字活动提醒设置
|
||
message CSActivitiesWordNoticeSetReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
int32 collect_id = 2;
|
||
bool no_notice = 3;
|
||
}
|
||
message SCActivitiesWordNoticeSetAck {
|
||
int32 error = 1;
|
||
int32 activity_id = 2;
|
||
int32 collect_id = 3;
|
||
bool no_notice = 4;
|
||
}
|
||
//转盘活动
|
||
//刷新转盘道具(未开启本轮时操作)
|
||
message CSActivityWheelRefreshReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
}
|
||
message SCActivityWheelRefreshAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//开启本轮转盘(开始获取奖励)
|
||
message CSActivityWheelOpenRewardReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
}
|
||
message SCActivityWheelOpenRewardAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//转一次/转本轮(获取所有奖励)
|
||
message CSActivityWheelRewardReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
bool reward_all = 2;//false:转一次 true:获取所有奖励
|
||
}
|
||
message SCActivityWheelRewardAck {
|
||
int32 error = 1; //错误码
|
||
bool reward_all = 2; //转一次/转本轮
|
||
repeated WheelRewardItemInfo reward_list = 3; //奖励
|
||
}
|
||
//关闭本轮转盘
|
||
message CSActivityWheelCloseRewardReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
}
|
||
message SCActivityWheelCloseRewardAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
//活动召唤
|
||
//召唤
|
||
message CSActivitySummonReq { //project game //RouteRule game
|
||
int32 activity_id = 1; //活动id
|
||
int32 summon_count = 2; //抽取次数(单抽,10连抽)
|
||
}
|
||
message SCActivitySummonAck {
|
||
int32 error = 1; //错误码
|
||
int32 activity_id = 2; //活动ID
|
||
int32 draw_count = 3; //抽卡类型1:抽1次,5:抽五次
|
||
repeated DrawItem item_list = 4; //抽取的奖励列表
|
||
repeated DrawItem extra_item = 5; //保底奖励
|
||
int32 draw_times = 6; //draw_type对应的抽取次数
|
||
int32 add_point = 7; //增加的保底点数
|
||
}
|
||
|
||
message CSActivitySignInReq { //project game //RouteRule game
|
||
int32 activity_id = 1; //活动id
|
||
}
|
||
|
||
message SCActivitySignInAck {
|
||
int32 error = 1; //错误码
|
||
int32 activity_id = 2; //活动id
|
||
repeated KeyValueType reward_list = 3; //奖励列表
|
||
repeated KeyValueType ext_reward_list = 4; //额外奖励
|
||
uint64 next_sign_time = 5; //下次签到时间
|
||
int32 sign_days = 6; //当前签到天数
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////拉新(好友邀请功能)
|
||
message SCInvitationStartupNtf {
|
||
RoleInvitation invitation_info = 1;
|
||
}
|
||
message SCInvitationChangNtf{
|
||
RoleInvitation invitation_info = 1;
|
||
repeated uint64 del_member_uid_list = 2;
|
||
}
|
||
//获取邀请码功能信息(无自身邀请码则生成)
|
||
message CSInvitationNumberReq { //project game //RouteRule game
|
||
}
|
||
message SCInvitationNumberAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//获取邀请码对应玩家信息
|
||
message CSInvitationNumberUserInfoReq { //project game //RouteRule game
|
||
uint64 invitation_number = 1; //自己的邀请码
|
||
}
|
||
message SCInvitationNumberUserInfoAck {
|
||
int32 error = 1; //错误码
|
||
CommonPlayerBriefInfo brief = 2; //邀请码对应玩家简介信息
|
||
int32 member_num = 3; //邀请码对一个玩家的成员数量
|
||
}
|
||
|
||
//填写其他玩家邀请码成为学员
|
||
message CSInvitationBeToMemberReq { //project game //RouteRule game
|
||
uint64 master_invitation_number = 1; //导师邀请码
|
||
uint64 master_uid = 2; //导师uid(做合法性校验)
|
||
}
|
||
message SCInvitationBeToMemberAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//拍一拍
|
||
message CSInvitationClickReq { //project game //RouteRule game
|
||
repeated uint64 member_uid_list = 1; //学员uid(填写0表示一键拍一拍)
|
||
}
|
||
message SCInvitationClickAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
//拍一拍回应
|
||
message CSInvitationClickReplayReq { //project game //RouteRule game
|
||
uint64 master_uid = 1; //有可能玩家已经被解除关系
|
||
}
|
||
message SCInvitationClickReplayAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
//导师删除学员
|
||
message CSInvitationDelMemberReq { //project game //RouteRule game
|
||
repeated uint64 del_member_uid_list = 1;
|
||
}
|
||
message SCInvitationDelMemberAck {
|
||
int32 error = 1; //错误码
|
||
repeated uint64 del_member_uid_list = 2;
|
||
}
|
||
//获取任务奖励
|
||
message CSInvitationTaskRewardReq { //project game //RouteRule game
|
||
repeated uint32 task_id_list = 1;
|
||
}
|
||
message SCInvitationTaskRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated uint32 task_id_list = 2;
|
||
repeated KeyValueType reward_item_list = 3; //奖励物品
|
||
}
|
||
/////////////////////////////////////////////////////////充值
|
||
//获取充值信息(订单信息,商品信息)
|
||
message CSPayInfoGetReq { //project game //RouteRule game
|
||
int32 goods_id = 1;
|
||
int32 goods_type = 2; //系统(首充)
|
||
int32 count = 3;
|
||
int32 activity_id = 4; //活动ID
|
||
}
|
||
message SCPayInfoGetAck {
|
||
int32 error = 1; //错误码
|
||
int32 goods_id = 2;
|
||
int32 goods_type = 3;
|
||
string goods_name = 4;
|
||
uint64 cp_order_id = 5; //产品订单号
|
||
float amount = 6; //支付总额
|
||
int32 count = 7; //购买数量
|
||
int32 s_id = 8; //当前服务器zone
|
||
string pay_code = 9; // 商品编号
|
||
string server_region = 10; //当前服务器所在大区
|
||
int32 activity_id = 11; //活动ID
|
||
string pay_notify_url = 12; //充值回调地址
|
||
}
|
||
//充值信息变更通知
|
||
message SCPayInfoNtf {
|
||
float total_recharge = 1; //累计充值
|
||
float day_recharge = 2; //每日累计充值
|
||
}
|
||
//上线获取成功成但是没有获取奖励的订单数据
|
||
message CSPayInfoOrderOKListGetReq { //project game //RouteRule game
|
||
}
|
||
message SCPayInfoOrderOKListGetAck {
|
||
repeated KeyValueType reward_item_list = 1; //奖励物品
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////百人道场
|
||
//基础收益 / 占领收益 / 剩余挑战次数 变更通知
|
||
message SCDaoChang100DataChangNtf{
|
||
RoleDaoChang100 ntf_data = 1;
|
||
DaoChang100PosIdxData self_pos_data = 2;
|
||
}
|
||
//获取玩家(玩家自身和其他玩家)占位信息
|
||
message CSDaoChang100PlayerInfoReq { //project game|rank //RouteRule game
|
||
uint64 player_uid = 1;
|
||
}
|
||
message SCDaoChang100PlayerInfoAck { //project game
|
||
int32 error = 1; //错误码
|
||
uint64 player_uid = 2;
|
||
DaoChang100PosIdxData player_pos_data = 3;
|
||
bool has_new_log = 4; //占位过期日志
|
||
}
|
||
//获取百人道场位置信息数据
|
||
//列表上限20
|
||
message CSDaoChang100Req { //project game //RouteRule game
|
||
repeated int32 pos_idx_list = 1;
|
||
}
|
||
message SCDaoChang100Ack {
|
||
int32 error = 1; //错误码
|
||
repeated DaoChang100PosIdxData pos_data_list = 2; //占位信息
|
||
}
|
||
//获取占领记录
|
||
message CSDaoChang100LogReq { //project game //RouteRule game
|
||
uint64 begin_time = 1;
|
||
}
|
||
message SCDaoChang100LogAck {
|
||
int32 error = 1; //错误码
|
||
repeated DaoChang100Log log_list = 2;
|
||
bool is_end = 3;
|
||
}
|
||
//挑战占位(挑战成功后发送通知消息SCDaoChang100DataChangNtf)
|
||
message CSDaoChang100ChallengeReq { //project game //RouteRule game
|
||
int32 pos_idx = 1;
|
||
}
|
||
message SCDaoChang100ChallengeAck {
|
||
int32 error = 1; //错误码
|
||
int32 pos_idx = 2;
|
||
FightRoleInfo fight_info = 3; //对方玩家信息
|
||
DaoChang100PosIdxData challenge_pos_data = 4;
|
||
}
|
||
message CSDaoChang100ChallengeResultReq { //project game //RouteRule game
|
||
int32 battle_time = 1; //战斗持续时间
|
||
int32 pos_idx = 2;
|
||
uint64 pos_uid = 3; //对手id 玩家赋值uid,机器人赋值机器人id(做校验使用)
|
||
bool battle_result = 4; //true胜利 false失败
|
||
}
|
||
//获取收益奖励
|
||
message CSDaoChang100TimeRewardReq { //project game //RouteRule game
|
||
}
|
||
message SCDaoChang100TimeRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2;
|
||
int32 reward_num = 3; //领取的base奖励次数
|
||
}
|
||
//购买挑战次数
|
||
message CSDaoChang100BuyChallengeCountReq { //project game //RouteRule game
|
||
}
|
||
message SCDaoChang100BuyChallengeCountAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//道场口号设置
|
||
message CSDaoChang100SetTipsReq { //project game //RouteRule game
|
||
string tip_desc = 1; //
|
||
}
|
||
message SCDaoChang100SetTipsAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
|
||
//礼包码获取奖励
|
||
message CSGiftRewardReq { //project game|social|gmweb //RouteRule game
|
||
string gift_code = 1;
|
||
uint64 uuid = 2;
|
||
}
|
||
message SCGiftRewardAck { //project social|game
|
||
int32 error = 1; //错误码
|
||
uint64 uuid = 2; //服务器使用
|
||
repeated KeyValueType reward_list = 3; //礼包奖励
|
||
string gift_code = 4;
|
||
}
|
||
|
||
//道场转盘
|
||
message SCDaoChang100WheelChangNtf {
|
||
RoleDaoChang100 ntf_data = 1;
|
||
}
|
||
//打开界面是获取信息(第三赛季未到时无数据,后续打开生成奖励物品)
|
||
message CSDaoChang100WheelReq { //project game //RouteRule game
|
||
}
|
||
message SCDaoChang100WheelAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//刷新转盘道具(未开启本轮时操作)
|
||
message CSDaoChang100WheelRefreshReq { //project game //RouteRule game
|
||
}
|
||
message SCDaoChang100WheelRefreshAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//开启本轮转盘(开始获取奖励)
|
||
message CSDaoChang100WheelOpenRewardReq { //project game //RouteRule game
|
||
}
|
||
message SCDaoChang100WheelOpenRewardAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//转一次/转本轮(获取所有奖励)
|
||
message CSDaoChang100WheelRewardReq { //project game //RouteRule game
|
||
bool reward_all = 1;//false:转一次 true:获取所有奖励
|
||
}
|
||
message SCDaoChang100WheelRewardAck {
|
||
int32 error = 1; //错误码
|
||
bool reward_all = 2; //转一次/转本轮
|
||
repeated WheelRewardItemInfo reward_list = 3; //奖励
|
||
}
|
||
//关闭本轮转盘
|
||
message CSDaoChang100WheelCloseRewardReq { //project game //RouteRule game
|
||
}
|
||
message SCDaoChang100WheelCloseRewardAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//获取转盘日志
|
||
message CSDaoChang100WheelLogReq { //project game|db //RouteRule game
|
||
}
|
||
message SCDaoChang100WheelLogAck { //project game
|
||
repeated WheelLogData log_list = 1;
|
||
}
|
||
message SCDaoChang100WheelLogNtf { //project game
|
||
repeated WheelLogData log_list = 1;
|
||
}
|
||
|
||
message SCCompetitionStarInfoNtf {
|
||
int32 cur_score = 1; //当前积分
|
||
int32 next_final = 2; //高一档最后一名
|
||
int32 before_first = 3; //低一档第一名
|
||
}
|
||
|
||
message CSCompetitionStarInfoReq { //project game //RouteRule game
|
||
}
|
||
message SCCompetitionStarInfoAck {
|
||
int32 error = 1; //错误码
|
||
repeated int32 stars = 2; //当前拥有的星星
|
||
}
|
||
|
||
//占卜一次
|
||
message CSCompetitionStarDivineReq { //project game //RouteRule game
|
||
bool use_ticket = 1;
|
||
}
|
||
message SCCompetitionStarDivineAck {
|
||
int32 error = 1; //错误码
|
||
repeated int32 stars = 2; //当前拥有的星星
|
||
int32 star = 3; //本次抽到的星星
|
||
bool light = 4; //true点亮, false灭掉
|
||
}
|
||
|
||
//领奖/关闭本轮占卜
|
||
message CSCompetitionStarCloseRewardReq { //project game //RouteRule game
|
||
}
|
||
message SCCompetitionStarCloseRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated int32 stars = 2; //当前拥有的星星,重置
|
||
repeated KeyValueType reward_list = 3; //奖励列表
|
||
}
|
||
|
||
//累计在线奖励获取
|
||
message CSAccOnlineRewardReq { //project game|db //RouteRule game
|
||
}
|
||
message SCAccOnlineRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 3; //奖励内容
|
||
}
|
||
|
||
|
||
//偶像季 主动投票
|
||
message CSCompetitionOnVoteReq { //project game //RouteRule game
|
||
int32 ticket_count = 1; //票数
|
||
uint64 uid = 2; //投票目标
|
||
}
|
||
message SCCompetitionOnVoteAck {
|
||
int32 error = 1; //错误码
|
||
uint64 uid = 2; //投票目标
|
||
int32 total_count = 3; //uid总票数
|
||
//前三名的票数
|
||
repeated FansRankData vote_list = 4; //前三名数据
|
||
repeated PlayerShowData detail = 5; //详细信息
|
||
FansRankData vote_target = 6; //投票目标
|
||
int32 ticket_count = 7; //本次投票数量
|
||
repeated KeyValueType64 reward_data = 8; //key uid, value 分数 value2表示领奖数据(value2按位取值)
|
||
}
|
||
|
||
//偶像季 请求自己的粉丝榜
|
||
message CSCompetitionSelfFansInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCCompetitionSelfFansInfoAck {
|
||
int32 error = 1; //错误码
|
||
repeated FansVoteData fan_list = 2; //粉丝投我的数据(Key 粉丝ID, value 票数)(策划只需要,固定前十名)
|
||
}
|
||
|
||
//偶像季 得票排行榜单
|
||
message CSCompetitionVoteRankReq { //project game //RouteRule game
|
||
int32 page = 1;
|
||
}
|
||
message SCCompetitionVoteRankAck {
|
||
int32 error = 1; //错误码
|
||
int32 page = 2;
|
||
repeated FansRankData rank_data = 3; //排行榜
|
||
bool is_end = 4; //是否结束
|
||
}
|
||
|
||
//偶像季 粉丝奖励榜
|
||
message CSCompetitionFansRewardRankReq { //project game //RouteRule game
|
||
int32 page = 1; //应援主角
|
||
}
|
||
message SCCompetitionFansRewardRankAck {
|
||
int32 error = 1; //错误码
|
||
int32 page = 2; //应援主角
|
||
repeated FansBoxData data_list = 3; //粉丝奖励榜列表
|
||
repeated KeyValueType64 reward_data = 4; //key uid, value 分数 value2表示领奖数据(value2按位取值)
|
||
bool is_end = 5; //是否结束
|
||
}
|
||
|
||
//偶像季 粉丝领奖
|
||
message CSCompetitionFansGetRewardReq { //project game //RouteRule game
|
||
uint64 uid = 1; //应援主角
|
||
int32 reward_level = 2; //奖励等级
|
||
}
|
||
message SCCompetitionFansGetRewardAck {
|
||
int32 error = 1; //错误码
|
||
uint64 uid = 2; //应援主角
|
||
int32 reward_level = 3; //奖励等级
|
||
repeated KeyValueType reward_list = 4; //
|
||
int32 reward_flag = 5; //领奖标记
|
||
}
|
||
|
||
//偶像季 请求每日奖励
|
||
message CSCompetitionFansDayRewardReq { //project game //RouteRule game
|
||
int32 id = 1; //领取ID
|
||
}
|
||
|
||
message SCCompetitionFansDayRewardAck {
|
||
int32 error = 1; //错误码
|
||
int32 id = 2; //领取ID
|
||
}
|
||
|
||
//偶像季 请求玩家票数排行榜
|
||
message CSCompetitionGetPlayerVoteRankReq { //project game //RouteRule game
|
||
uint64 uid = 1; //领取ID
|
||
}
|
||
|
||
message SCCompetitionGetPlayerVoteRankAck {
|
||
int32 error = 1; //错误码
|
||
FansRankData idol_rank_data = 2; //排行榜
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////GM操作
|
||
message CSGMCommandReq { //project game //RouteRule game
|
||
string gm_cmd = 1;//gm命令
|
||
uint32 gm_param1 = 2;
|
||
uint32 gm_param2 = 3;
|
||
repeated uint32 gm_param_list = 4;
|
||
}
|
||
message SCGMCommandAck {
|
||
string gm_cmd = 1;//gm命令
|
||
}
|
||
|
||
//vip变动通知
|
||
message SCVipChangeNtf {
|
||
int32 vip_level = 1; //vip等级
|
||
int32 vip_exp = 2; //vip总经验
|
||
}
|
||
|
||
//抽卡
|
||
message CSDrawCardReq { //project game //RouteRule game
|
||
int32 draw_type = 1; //1:宠物抽卡, 2:卡片抽卡,
|
||
int32 draw_count = 2; //抽卡类型1:抽1次,5:抽五次
|
||
bool watch_ad = 3; //看广告
|
||
}
|
||
|
||
message DrawItem {
|
||
int32 item_id = 1; //道具Id
|
||
int32 item_num = 2; //道具数量
|
||
bool is_new = 3; //是否新获得
|
||
}
|
||
|
||
message SCDrawCardAck {
|
||
int32 error = 1; //错误码
|
||
int32 draw_type = 2; //1:宠物抽卡, 2:卡片抽卡,
|
||
int32 draw_count = 3; //抽卡类型1:抽1次,5:抽五次
|
||
repeated DrawItem item_list = 4; //抽取的奖励列表
|
||
repeated DrawItem extra_item = 5; //保底奖励
|
||
int32 draw_times = 6; //draw_type对应的抽取次数
|
||
int32 add_point = 7; //增加的保底点数
|
||
}
|
||
|
||
//商店
|
||
message RuneShopItem {
|
||
int32 goods_id = 1; //商品ID
|
||
int64 end_time = 2; //商品结束时间(限时商店使用)
|
||
int32 buy_nums = 3; //可购买数量
|
||
bool buy_limit = 4; //是否限购
|
||
bool first_buy = 5; //是否首次购买
|
||
float price = 6; //价格
|
||
string code = 7; //商品编号
|
||
float original_price = 8;
|
||
}
|
||
|
||
//卢恩商店信息请求
|
||
message CSRuneShopInfoReq { //project game //RouteRule game
|
||
int32 shop_type = 1; //商店类型
|
||
int32 sub_shop = 2; //商店子类型
|
||
int32 activity_id = 3; //活动ID
|
||
}
|
||
|
||
message SCRuneShopInfoAck {
|
||
int32 shop_type = 1; //商店类型
|
||
int32 sub_shop = 2; //商店子类型
|
||
repeated RuneShopItem goods_list = 3; //商店道具类型
|
||
int64 end_time = 4; //礼包商店截止时间(根据子类型)
|
||
int32 activity_id = 5; //活动ID
|
||
}
|
||
|
||
//购买完成后,通知客户端购买后的商品信息
|
||
message SCRuneShopBuyItemNtf {
|
||
int32 error = 1; //错误码
|
||
int32 shop_type = 2; //商店类型
|
||
int32 sub_shop = 3; //商店子类型
|
||
RuneShopItem shop_item = 4; //商店商品信息
|
||
}
|
||
|
||
//卢恩商店红点信息
|
||
message SCRuneFreeRedChangeInfoNtf {
|
||
repeated KeyValueType rune_red = 1; //Key:ShopType,Value:SubShop
|
||
repeated int32 limit_red = 2; //限时礼包商店,售卖物品
|
||
}
|
||
|
||
//经验变化推送客户端
|
||
message SCExploreExpChangeNtf {
|
||
int32 total_exp = 1; // 总经验
|
||
int32 MissionExp = 2; // 经验
|
||
int32 level = 3; // 等级
|
||
}
|
||
|
||
//请求探索功能数据
|
||
message CSExploreInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCExploreInfoAck {
|
||
int32 total_exp = 1; // 总经验
|
||
int32 level = 2; // 等级
|
||
uint64 startTime = 3; // 开始时间
|
||
uint64 endTime = 4; // 结束时间
|
||
uint64 nextStartTime = 5; // 下一场开启时间
|
||
int32 missionExp = 6; // 活跃度经验
|
||
int32 curRoune = 7; // 当前轮次
|
||
bool bUnlock = 8; // 是否解锁
|
||
bool fullAward = 9; // 满级已领取奖励
|
||
repeated KeyValueType draw_rewar = 10; //key,等级,value:按位取,第一位表示普通奖励,第二位表示高级奖励
|
||
string code = 11; //商品编号
|
||
float original_price = 12;
|
||
}
|
||
|
||
//满级之后奖励领取
|
||
message CSExploreExtraRewardReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCExploreExtraRewardAck {
|
||
int32 error = 1;
|
||
int32 total_exp = 2; //当前总经验
|
||
int32 mission_exp =3;
|
||
repeated KeyValueType award_item = 4;
|
||
}
|
||
|
||
//普通等级奖励领取
|
||
message CSExploreRewardReq { //project game //RouteRule game
|
||
int32 level = 1; //领取等级
|
||
int32 reward_type = 2; //领取类型:1表示普通奖励,2高级奖励
|
||
}
|
||
|
||
message SCExploreRewardAck {
|
||
int32 error = 1;
|
||
int32 type =2;
|
||
int32 level =3;
|
||
repeated KeyValueType award_item = 4;
|
||
repeated KeyValueType draw_rewar = 5; //key,等级,value:按位取,第一位表示普通奖励,第二位表示高级奖励
|
||
}
|
||
|
||
//飞艇探索一键领取(含满级奖励)
|
||
message CSExploreRewardOnekeyReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCExploreRewardOnekeyAck {
|
||
int32 error = 1;
|
||
int32 total_exp = 2; //当前总经验
|
||
repeated KeyValueType award_item = 3;
|
||
repeated KeyValueType draw_rewar = 4; //key,等级,value:按位取,第一位表示普通奖励,第二位表示高级奖励
|
||
repeated int32 lvs = 5;
|
||
}
|
||
/////////////////////////////////////////////////////////
|
||
message SCPayForGoodsNtf {
|
||
int32 goods_type = 1; //商店类型
|
||
int32 goods_id = 2; //商品ID
|
||
int32 goods_num = 3; //商品数量
|
||
repeated KeyValueType item_list = 4; //购买获得道具
|
||
uint64 cp_order_id = 5; //订单号
|
||
}
|
||
|
||
//测试发送所有玩家位置信息AOI
|
||
message SCGMSyncAllPlayerNtf{
|
||
repeated Player players = 1;
|
||
}
|
||
|
||
message SCWebGMNoticeNtf {
|
||
GMNoticeInfo notice_info = 1;
|
||
}
|
||
|
||
//客户端加速外挂
|
||
message CSAntiCheatReq { //project game //RouteRule game
|
||
int32 cheat_type = 1;
|
||
}
|
||
//
|
||
message SCAntiCheatAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//问卷奖励获取
|
||
message CSQuestionRewardReq { //project game //RouteRule game
|
||
}
|
||
//问卷奖励获取 ack回应
|
||
message SCQuestionRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
|
||
//当前累计在线奖励获取
|
||
message CSOnlineTimeRewardReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCOnlineTimeRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_item_list = 2; //奖励物品
|
||
}
|
||
message SCOnlineTimeRewardNtf {
|
||
int32 total_online_time = 1; //当前累计在线时间(隔天重置)s
|
||
uint64 online_stamp = 2; //上线时的时间戳 ms
|
||
int32 online_reward_id = 3; //奖励id(配置表中的唯一ID)
|
||
}
|
||
|
||
|
||
///////////////////////信物相关///////////////////////
|
||
message CSOnlineGetKeepSakeReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCOnlineGetKeepSakeAck {
|
||
RoleKeepSake role_keep_sake = 1;
|
||
}
|
||
|
||
message CSKeepSakeRankReq{ //project game|rank //RouteRule game
|
||
int32 keep_sake_id = 1;
|
||
}
|
||
message SCKeepSakeRankAck{ //project game
|
||
int32 error = 1;
|
||
int32 keep_sake_id = 2;
|
||
CommonPlayerBriefInfo player_info = 3;
|
||
uint64 achievement_time = 4;
|
||
}
|
||
|
||
message CSKeepSakeLevelUpReq { //project game //RouteRule game
|
||
int32 keep_sake_id = 1;
|
||
}
|
||
|
||
message SCKeepSakeLevelUpAck {
|
||
int32 error = 1;
|
||
}
|
||
|
||
message SCKeepSakeChangeNtf {
|
||
KeepSake keep_sake = 1;
|
||
repeated KeyValueType materials = 2;
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////跨服协议处理
|
||
/////////////////////////////////////////////////////////跨服远航试炼
|
||
message SCCrossYuanHangTrialDataNtf {
|
||
RoleYuanHangTrial yuanhangtrial_data = 1; //返回远航试炼数据(个人)
|
||
}
|
||
//刷新远航试炼品质
|
||
message CSCrossYuanHangTrialRefreshTrialTypeReq { //project game //RouteRule game
|
||
bool force = 1; //是否直接升级为顶级
|
||
bool watch_ad = 2; //看广告
|
||
}
|
||
message SCCrossYuanHangTrialRefreshTrialTypeAck {
|
||
int32 error = 1; //错误码
|
||
}
|
||
//发起远航试炼
|
||
message CSCrossYuanHangTrialReq { //project game //RouteRule game
|
||
}
|
||
message SCCrossYuanHangTrialAck {
|
||
int32 error = 1; //错误码
|
||
YuanHangTrialData trial_data = 2; //返回远航试炼数据(个人)
|
||
}
|
||
//获取远航试炼奖励(试炼结束奖励)
|
||
message CSCrossYuanHangTrialRewardReq { //project game //RouteRule game
|
||
}
|
||
message SCCrossYuanHangTrialRewardAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2; //奖励内容
|
||
}
|
||
//远航试炼挑战
|
||
message CSCrossYuanHangTrialChallengeReq { //project game //RouteRule game
|
||
uint64 challenge_uid = 1;
|
||
uint64 challenge_uid_end_time = 2;
|
||
}
|
||
message SCCrossYuanHangTrialChallengeAck {
|
||
int32 error = 1; //错误码
|
||
uint64 challenge_uid = 2;
|
||
uint64 challenge_uid_end_time = 3;
|
||
FightRoleInfo fight_info = 5; //被挑战玩家战斗数据
|
||
}
|
||
//挑战结果通知
|
||
message CSCrossYuanHangTrialChallengeResultReq { //project game //RouteRule game
|
||
uint64 challenge_uid = 1;
|
||
uint64 challenge_uid_end_time = 2;
|
||
int32 fight_time = 3; //战斗持续时间(判断合法性)
|
||
bool win = 4; //true胜利 false失败
|
||
}
|
||
message SCCrossYuanHangTrialChallengeResultAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2; //奖励内容
|
||
int32 old_score = 3; //获得的积分
|
||
int32 new_score = 4; //累加后的当前积分
|
||
}
|
||
//获取远航试炼排行榜
|
||
message CSCrossYuanHangTrialRankListReq { //project game //RouteRule game
|
||
int32 start_idx = 1;
|
||
}
|
||
message SCCrossYuanHangTrialRankListAck {
|
||
int32 error = 1; //错误码
|
||
int32 start_idx = 2;
|
||
uint32 self_rank = 3; //自身排名
|
||
uint64 self_score = 4; //自身积分
|
||
uint32 total_rank = 5; //当前参加排名的人数
|
||
repeated CommonRankInfo rank_list = 6;
|
||
}
|
||
//获取远航界面可视列表
|
||
//每次打开界面,或者隔一段时间发送一次,服务器会返回这段时间内变化的数据
|
||
message CSCrossYuanHangTrialViewListReq { //project game //RouteRule game
|
||
bool notify = 1; //true表示通知服务器需要更新,false是正常的获取界面数据
|
||
}
|
||
message SCCrossYuanHangTrialViewListAck {
|
||
int32 error = 1; //错误码
|
||
repeated YuanHangTrialData trial_view_list = 2; //界面上可视列表
|
||
}
|
||
message CSCrossYuanHangTrialViewListOutReq { //project game //RouteRule game
|
||
}
|
||
message SCCrossYuanHangTrialViewListNtf {
|
||
repeated YuanHangTrialData trial_view_list = 1; //界面上可视列表
|
||
}
|
||
//查询飞艇信息
|
||
message CSCrossYuanHangTrialInfoReq { //project game //RouteRule game
|
||
uint64 trial_uid = 1;
|
||
uint64 trial_end_time = 2;
|
||
}
|
||
message SCCrossYuanHangTrialInfoAck {
|
||
int32 error = 1;
|
||
YuanHangTrialData trial_data = 2;
|
||
string nick_name = 3;
|
||
}
|
||
//日志获取
|
||
message CSCrossYuanHangTrialLogReq { //project game //RouteRule game
|
||
uint64 log_time = 1;
|
||
}
|
||
message SCCrossYuanHangTrialLogAck {
|
||
int32 error = 1; //错误码
|
||
repeated YuanHangTrialLogData log_list = 2; //挑战被挑战日志记录
|
||
bool is_end = 3;
|
||
}
|
||
|
||
////巅峰爬塔
|
||
//获取巅峰爬塔对战数据
|
||
//获取挑战列表
|
||
message CSCrossTopTowerFightListReq { //project game //RouteRule game
|
||
}
|
||
message SCCrossTopTowerFightListAck {
|
||
int32 error = 1; //错误码
|
||
RoleCrossTopTower toptower_data = 2; //变更层数数据(不一定是所有数据,切记!!!)
|
||
}
|
||
//发起挑战,判断合法性
|
||
message CSCrossTopTowerChallengeReq { //project game //RouteRule game
|
||
int32 fight_idx = 1; //挑战对手层数[1-10]
|
||
}
|
||
message SCCrossTopTowerChallengeAck {
|
||
int32 error = 1; //错误码
|
||
TopTowerFightRoleInfo fight_info = 2; //该位置玩家战斗信息
|
||
}
|
||
//获取挑战者view信息
|
||
message CSCrossTopTowerChallengeViewInfoReq { //project game //RouteRule game
|
||
int32 fight_idx = 1; //挑战对手层数[1-10]
|
||
}
|
||
message SCCrossTopTowerChallengeViewInfoAck {
|
||
int32 error = 1; //错误码
|
||
TopTowerFightRoleInfo fight_info = 2; //该位置玩家战斗信息
|
||
}
|
||
//战斗结果通知
|
||
message CSCrossTopTowerChallengeResultReq { //project game //RouteRule game
|
||
bool is_win = 1;
|
||
int32 fight_idx = 2; //挑战对手层数[1-10]
|
||
}
|
||
message SCCrossTopTowerChallengeResultAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2; //奖励内容
|
||
TopTowerFightRoleInfo fight_info = 3; //对应层数数据变更通知
|
||
}
|
||
//买路操作(直接胜利)
|
||
message CSCrossTopTowerForceWinReq { //project game //RouteRule game
|
||
int32 fight_idx = 1; //挑战对手层数[1-10]
|
||
}
|
||
message SCCrossTopTowerForceWinAck {
|
||
int32 error = 1; //错误码
|
||
repeated KeyValueType reward_list = 2; //奖励内容
|
||
TopTowerFightRoleInfo fight_info = 3; //对应层数数据变更通知
|
||
}
|
||
//获取买路排行榜
|
||
message CSCrossTopTowerForceWinRankListReq { //project game //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 start_idx = 2;
|
||
}
|
||
message SCCrossTopTowerForceWinRankListAck {
|
||
int32 start_idx = 1;
|
||
uint32 self_rank = 2; //自身排名
|
||
uint64 self_score = 3; //自身积分
|
||
uint32 total_rank = 4; //当前参加排名的人数
|
||
repeated CommonRankInfo rank_list = 5;
|
||
}
|
||
|
||
////全局跨服功能
|
||
//获取服务器列表信息(状态)
|
||
//server_type (31教堂地图)
|
||
message CSGCrossGetServerStateReq { //project game //RouteRule game
|
||
int32 server_type = 1; //服务器类型id(node中的type)
|
||
}
|
||
message SCGCrossGetServerStateAck {
|
||
int32 error = 1; //错误码
|
||
int32 server_type = 2; //服务器类型id(node中的type)
|
||
repeated ServerStateInfo server_list = 3; //多个gcrossmap时就有多个
|
||
}
|
||
//角色进入地图
|
||
message CSGCrossPlayerEnterMapReq{ //project game //RouteRule game
|
||
int32 map_type = 1; //不同系统玩法
|
||
int32 line_num = 2; //选择的线路(1线 2线...)
|
||
Vector3 pos = 3;
|
||
Vector3 dir = 4;
|
||
}
|
||
message SCGCrossPlayerEnterMapAck{
|
||
int32 error = 1; //错误码
|
||
int32 line_num = 2;
|
||
UnitPosAndDir self_info = 3;
|
||
}
|
||
//离开地图
|
||
message CSGCrossPlayerLeaveMapReq { //project game //RouteRule game
|
||
Vector3 pos = 1; //玩家离开时的位置
|
||
}
|
||
//客户端1s内发送的位置同步包(视野同步)
|
||
message CSGCrossPlayerMapSyncPosReq { //project game //RouteRule game
|
||
Vector3 pos = 1; //位置
|
||
Vector3 dir = 2; //朝向
|
||
int32 cur_space_id = 3; //当前所在场景ID
|
||
int32 is_on_ground = 4; //是否在地面上
|
||
}
|
||
//位置同步消息(用来做视野同步)
|
||
message SCGCrossPlayerMapSyncPosNtf {
|
||
repeated UnitPosAndDir unit_info_list = 1;
|
||
}
|
||
//客户端模拟使用
|
||
message CSGCrossPlayerMapSyncParamReq { //project game //RouteRule game
|
||
Vector3 pos = 1; //位置
|
||
int32 param_id = 2; //通用参数标签
|
||
}
|
||
message SCGCrossPlayerMapSyncParamNtf{
|
||
repeated UnitPosAndDir unit_info_list = 1;
|
||
}
|
||
//通知玩家当前有其他玩家进入自己视野
|
||
message SCGCrossPlayerEnterNtf {
|
||
repeated UnitPosAndDir unit_info_list = 1;
|
||
}
|
||
message SCGCrossPlayerLeaveNtf {
|
||
repeated UnitPosAndDir unit_info_list = 1;
|
||
}
|
||
//获取其他玩家角色信息,AOI地图显示使用(注意:每次发送不超过10个玩家,超过10个后服务器不会返回,做保护处理)
|
||
message CSGCrossPlayerShowInfoReq { //project game //RouteRule game
|
||
repeated uint64 player_list = 1;//拉取角色信息列表
|
||
}
|
||
message SCGCrossPlayerShowInfoNtf{
|
||
repeated PlayerShowInfo show_info_list = 1; //玩家角色信息
|
||
}
|
||
|
||
/////////////////////////////////////////////////////////
|
||
|
||
//客户端打点信息上报
|
||
message ClientParamInfo {
|
||
string device_model = 1; //设备型号
|
||
int32 device_height = 2; //屏幕高度
|
||
int32 device_width = 3; //屏幕宽度
|
||
string os_name = 4; //操作系统
|
||
string os_ver = 5; //操作系统版本
|
||
string mac_addr = 6; //设备mac地址
|
||
string udid = 7; //设备唯一标示符
|
||
string isp = 8; //网络运营商
|
||
string network = 9; //网络连接
|
||
string app_channel = 10; //运营渠道
|
||
string app_ver = 11; //客户端版本号
|
||
string trans_id = 12; //transid
|
||
string unisdk_deviceid = 13; //unisdk_deviceid
|
||
int32 is_emulator = 14; //是否模拟
|
||
int32 is_root = 15; //是否root
|
||
string account_id = 16;
|
||
string old_accountid = 17;
|
||
string IMEI = 18; //移动设备国际识别码
|
||
string country_code = 19; //国家代码
|
||
string enter_sn = 20; //enter_sn
|
||
string oaid = 21; //设备OAID
|
||
string engine_ver = 22; //引擎版本
|
||
}
|
||
message CSClientParamNtf { //project game //RouteRule game
|
||
ClientParamInfo client_info = 1;
|
||
}
|
||
|
||
//获取英雄属性/宠物属性
|
||
message ActorAttrType {
|
||
bool is_hero_pet = 1; //true=hero false=pet
|
||
uint32 actor_id = 2; //生成的动态ID
|
||
repeated KeyValueFloat32 attr_list = 3;
|
||
}
|
||
message CSActorAttrGetReq { //project game //RouteRule game
|
||
bool is_all_battle = 1;
|
||
repeated ActorAttrType actor_list = 2; //结构中的attr_list不用
|
||
}
|
||
message SCActorAttrGetAck {
|
||
int32 error = 1;
|
||
repeated ActorAttrType actor_attr_list = 2;
|
||
}
|
||
message SCActorAttrGetNtf {
|
||
repeated ActorAttrType actor_attr_list = 1;
|
||
}
|
||
|
||
// 高级技能经验兑换
|
||
message CSConverSkillExpReq{ //project game //RouteRule game
|
||
int32 cnt = 1; // 兑换数量
|
||
}
|
||
|
||
message SCConverSkillExpAck{
|
||
int32 error = 1;
|
||
}
|
||
|
||
// 称号状态更新
|
||
message SCHeadUpdateNtf{
|
||
repeated HeadData head = 1;
|
||
}
|
||
|
||
// 称号操作
|
||
message CSHeadOperateReq{ //project game //RouteRule game
|
||
int32 operateType = 1; // 1.激活 2.佩戴 3.卸下
|
||
int32 headId = 2;
|
||
}
|
||
|
||
message SCHeadOperateAck{
|
||
int32 operateType = 1;
|
||
int32 headId = 2;
|
||
int32 error = 3;
|
||
}
|
||
|
||
// 请求称号
|
||
message CSHeadDataReq{ //project game //RouteRule game
|
||
}
|
||
|
||
message SCHeadDataAck{
|
||
}
|
||
|
||
// 使用许愿宝箱
|
||
message CSWishBoxUseReq{ //project game //RouteRule game
|
||
uint64 item_id = 1;
|
||
int32 select_item = 2;
|
||
}
|
||
|
||
message SCWishBoxUseAck{
|
||
int32 error = 1;
|
||
int32 index = 2; // 宝箱位置
|
||
}
|
||
|
||
// 解锁许愿宝箱槽位
|
||
message CSWishUnlockSlotReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCWishUnlockSlotAck {
|
||
int32 error = 1;
|
||
}
|
||
|
||
// 许愿箱加速 + 领奖
|
||
message CSWishSlotReq {//project game //RouteRule game
|
||
int32 index = 1;
|
||
bool watch_ad = 2;//看广告
|
||
}
|
||
|
||
message SCWishSlotReqAck {
|
||
serverproto.KeyValueType award_item = 1; // 许愿物品
|
||
serverproto.KeyValueType lucky_item = 2; // 暴击物品
|
||
int32 error = 3;
|
||
}
|
||
|
||
message SCUpdateWishSlotNtf{
|
||
repeated WishSlot slots = 1;
|
||
}
|
||
|
||
//上线合服通知
|
||
message SCCombineServerOnlineNtf {
|
||
int32 error = 1;
|
||
uint64 combine_time = 2; //毫秒//合服时间
|
||
}
|
||
|
||
// 合服公告内容请求
|
||
message CSCombineServerInfoReq { //project game //RouteRule game
|
||
|
||
}
|
||
|
||
message SCCombineServerInfoAck {
|
||
int32 error = 1;
|
||
uint64 combine_time = 2; //毫秒//合服时间
|
||
string notice = 3; //合服公告
|
||
}
|
||
|
||
message SCWatchADInfoNtf {
|
||
repeated KeyValueType watch_ad = 1; //观看广告记录(Key枚举ID, value观看次数)
|
||
}
|
||
|
||
//功能开启
|
||
message SCBTFuncDisableFlagNtf {
|
||
repeated uint32 func_disable_flag = 1; //功能开启枚举(位上非0表示不开启) [1]1-32 [2]33-64
|
||
}
|
||
|
||
message CSGoogleCommentReq { //project game //RouteRule game
|
||
|
||
}
|
||
message SCGoogleCommentAck {
|
||
int32 error = 1;
|
||
}
|
||
|
||
//秒聚:请求信息
|
||
message CSMujoyGetReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCMujoyGetAck {
|
||
RoleMujoy mujoy = 1;
|
||
}
|
||
|
||
message SCMujoyNtf {
|
||
RoleMujoy mujoy = 1;
|
||
}
|
||
|
||
//妙聚:请求领取每日登录奖励
|
||
message CSMujoyLoginAwardReq { //project game //RouteRule game
|
||
bool use_item = 1;
|
||
}
|
||
|
||
message SCMujoyLoginAwardAck {
|
||
int32 error = 1;
|
||
bool use_item = 2;
|
||
int32 day_award_id = 3;
|
||
repeated KeyValueType reward_list = 4;
|
||
}
|
||
|
||
//妙聚:请求投掷骰子(默认会放弃当前暂存奖励)
|
||
message CSMujoyUseDiceReq { //project game //RouteRule game
|
||
}
|
||
|
||
message SCMujoyUseDiceAck {
|
||
int32 error = 1;
|
||
BigRichMan rich = 2;
|
||
}
|
||
|
||
//妙聚:看广告领取暂存奖励
|
||
message CSMujoyDiceAwardReq { //project game //RouteRule game
|
||
bool use_item = 1;
|
||
}
|
||
|
||
message SCMujoyDiceAwardAck {
|
||
int32 error = 1;
|
||
bool use_item = 2;
|
||
repeated KeyValueType reward_list = 3;
|
||
}
|
||
|
||
//妙聚:翻牌子
|
||
message CSMujoyFlipReq { //project game //RouteRule game
|
||
bool use_item = 1;
|
||
}
|
||
|
||
message SCMujoyFlipAck {
|
||
int32 error = 1;
|
||
bool use_item = 2;
|
||
int32 cfg_id = 3;
|
||
repeated KeyValueType reward_list = 4;
|
||
}
|
||
|
||
message CSCollectionRewardGetReq { //project game //RouteRule game
|
||
int32 type = 1;
|
||
}
|
||
|
||
message SCCollectionRewardGetAck {
|
||
int32 error = 1;
|
||
int32 type = 2;
|
||
repeated KeyValueType reward_list = 3;
|
||
}
|
||
|
||
message CSFundAwardOnekeyReq { //project game //RouteRule game
|
||
int32 activity_id = 1;
|
||
}
|
||
|
||
message SCFundAwardOnekeyAck {
|
||
int32 error = 1;
|
||
int32 activity_id = 2;
|
||
repeated KeyValueType reward_list = 3;
|
||
}
|
||
|
||
//请求获取活动排行榜信息
|
||
message CSGetCommonActivityRankReq { //project game|rank //RouteRule game
|
||
int32 activity_id = 1;
|
||
uint64 key = 2; //客户端可不填
|
||
uint64 score = 3; //客户端可不填
|
||
}
|
||
|
||
message SCGetCommonActivityRankAck { //project game
|
||
int32 error = 1;
|
||
int32 activity_id = 2;
|
||
int32 self_rank = 3; //自己的排名 0:表示未上榜
|
||
uint64 score = 4; //自己的积分
|
||
repeated CommonRankShapShotCli members = 5; //上榜玩家信息
|
||
}
|
||
|
||
//请求领取活动排行榜奖励
|
||
message CSGetPetRankAwardReq { //project game|rank //RouteRule game
|
||
int32 activity_id = 1;
|
||
uint64 uid = 2; //客户端不填
|
||
}
|
||
|
||
message SCGetPetRankAwardAck { //project game|rank //RouteRule game
|
||
int32 error = 1;
|
||
int32 activity_id = 2;
|
||
repeated KeyValueType reward_list = 3;
|
||
}
|
||
|
||
|
||
message CSLevelupSummonReq { //project game //RouteRule game
|
||
int32 group = 1;
|
||
int32 summon_count = 2; //抽取次数(单抽,连抽)
|
||
}
|
||
message SCLevelupSummonAck {
|
||
int32 error = 1; //错误码
|
||
repeated DrawItem item_list = 2; //抽取的奖励列表
|
||
int32 level = 3; //draw_type对应的抽取次数
|
||
int32 exp = 4; //增加的保底点数
|
||
int32 group = 5;
|
||
}
|
||
|
||
message SCLevelupSummonStartupNtf{
|
||
repeated LevelupSummonInfo info = 1;
|
||
}
|
||
|
||
message CSFruitJoinReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 room_no = 2;
|
||
int32 chip_num = 3;
|
||
string nickname = 4;
|
||
int32 level = 5;
|
||
string head_id = 6;
|
||
}
|
||
message SCFruitJoinAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
int32 stage = 3; //水果机状态:1-是押注阶段,2-开奖阶段
|
||
int32 sec = 4; //时间秒
|
||
int32 my_chip_num = 5; //玩家筹码
|
||
int32 pool_chip_num = 6; //奖池
|
||
repeated FruitSlotInfo total_bet_info = 7; //总的押注信息
|
||
repeated FruitSlotInfo my_bet_info = 8; //当前玩家的押注信息
|
||
repeated int32 settle_history = 9; //开奖历史记录
|
||
repeated int32 curr_award_slots = 10; //上次开奖结果
|
||
int32 curr_target_slot = 11; // 上次开奖slot
|
||
repeated FruitPlayerAwardInfo player_award_rank = 12;
|
||
}
|
||
message CSFruitLeaveReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 room_no = 2;
|
||
}
|
||
message SCFruitLeaveAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
}
|
||
message CSFruitBetReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
repeated FruitSlotInfo bet_info = 2;
|
||
}
|
||
message SCFruitBetAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
int32 my_chip_num = 3; //玩家筹码
|
||
uint32 pool_chip_num = 4; //奖池
|
||
repeated FruitSlotInfo total_bet_info = 5; //总的押注信息
|
||
repeated FruitSlotInfo my_bet_info = 6; //当前玩家的押注信息
|
||
}
|
||
message SCFruitSettleNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 my_chip_num = 2; //玩家筹码
|
||
int32 award_type = 3;
|
||
int32 award_chip_num = 4;
|
||
repeated int32 award_slots = 5;
|
||
repeated FruitSlotInfo award_chip_info = 6;
|
||
repeated int32 settle_history = 7; //开奖历史记录
|
||
int32 start_slot = 8;
|
||
int32 target_slot = 9;
|
||
uint32 add_reward_point = 10; // 奖励在线点数
|
||
}
|
||
message SCFruitStartBetNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
}
|
||
message SCFruitSecTickNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 sec = 2;
|
||
uint32 pool_chip_num = 3;
|
||
repeated FruitSlotInfo total_bet_info = 4;
|
||
}
|
||
message SCFruitPlayerAwardRankNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 award_type = 2;
|
||
repeated FruitPlayerAwardInfo player_award_rank = 3;
|
||
}
|
||
message CSFruitChatReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
string chat_content = 2;
|
||
}
|
||
message SCFruitChatNtf { //project game|fruit //RouteRule game
|
||
uint64 SN = 1;
|
||
uint64 uid = 2;
|
||
string nickname = 3;
|
||
int32 level = 4;
|
||
string head_id = 5;
|
||
string chat_content = 6;
|
||
}
|
||
|
||
message CSLiveRoomJoinReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_type = 2;
|
||
uint32 coin_num = 3;
|
||
uint32 game_chip_num = 4;
|
||
LiveRoomPlayerInfo player_info = 5;
|
||
}
|
||
message SCLiveRoomJoinAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
uint32 room_type = 3;
|
||
uint32 room_id = 4;
|
||
int64 heart = 5;
|
||
uint32 stage = 6;
|
||
uint32 stage_timer_sec = 7;
|
||
uint32 stage_sec = 8;
|
||
bool is_ready = 9;
|
||
repeated LiveRoomPlayerInfo gift_records = 10;
|
||
repeated LiveRoomChatData chat_datas = 11;
|
||
repeated LiveRoomPlayerInfo ready_player_info_list = 12;
|
||
}
|
||
message CSLiveRoomLeaveReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
}
|
||
message SCLiveRoomLeaveAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
uint32 room_id = 3;
|
||
}
|
||
message CSLiveRoomChatReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
string chat_content = 3;
|
||
}
|
||
message SCLiveRoomChatNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
LiveRoomChatData chat_data = 3;
|
||
}
|
||
message SCLiveRoomTimerNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
uint32 stage = 3;
|
||
uint32 timer_sec = 4;
|
||
}
|
||
message CSLiveRoomSendGiftReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
uint32 gift_id = 3;
|
||
}
|
||
message SCLiveRoomSendGiftAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
uint32 room_id = 3;
|
||
uint32 gift_id = 4;
|
||
}
|
||
message SCLiveRoomSendGiftNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
LiveRoomPlayerInfo send_gift_info = 3;
|
||
}
|
||
message CSLiveRoomAddHeartReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
}
|
||
message SCLiveRoomAddHeartAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
int64 heart = 3;
|
||
}
|
||
|
||
message CSLiveRoomGiftRankReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
}
|
||
message SCLiveRoomGiftRankAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
repeated LiveRoomPlayerInfo gift_rank = 3;
|
||
}
|
||
message SCLiveRoomCMDTalkNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
uint32 talk_id = 3;
|
||
string talk_params = 4;
|
||
}
|
||
message SCLiveRoomCMDPlayNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
repeated KeyValueType64 play_data_list = 3;
|
||
}
|
||
message SCLiveRoomStageNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
uint32 stage = 3;
|
||
uint32 stage_timer_sec = 4;
|
||
string stage_params = 5;
|
||
}
|
||
message CSLiveRoomGetReadyReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
}
|
||
message SCLiveRoomGetReadyAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
bool is_ready = 3;
|
||
}
|
||
message SCLiveRoomGetReadyNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
repeated LiveRoomPlayerInfo ready_player_info_list = 3;
|
||
}
|
||
message SCLiveRoomShowDataNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
repeated KeyValueType64 show_data_list = 3;
|
||
}
|
||
message CSLiveRoomShowSubmitReq { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
repeated KeyValueType64 submit_data = 3;
|
||
}
|
||
message SCLiveRoomShowSubmitAck { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
int32 error = 2;
|
||
repeated KeyValueType64 submit_result = 3;
|
||
}
|
||
|
||
message SCLiveRoomResultNtf { //project game|fruit //RouteRule game
|
||
uint64 uid = 1;
|
||
uint32 room_id = 2;
|
||
repeated LiveRoomPlayerInfo player_result_list = 3;
|
||
repeated KeyValueType64 player_reward_list = 4;
|
||
}
|