877 lines
38 KiB
Protocol Buffer
Raw Normal View History

2025-06-04 17:07:16 +08:00
syntax = "proto3";
package serverproto;
import "common.proto";
import "user.proto";
//////////////////////////webgm
message WebRoleInfo {
RoleBase base = 1;
RoleHero role_hero = 2; //玩家伙伴信息
}
message WebUpdateMailItem {
int32 id = 1;
repeated uint64 uid_list = 2;
string title = 3;
string content = 4;
repeated KeyValueType reward_list = 5;
uint64 send_date = 6;
int32 mail_type = 7;
}
message SSWebGMChatMsgNtf { //project db
uint64 uid = 1;
uint64 target_uid = 2;
ChatMessageInfo content = 3;
int32 msg_type = 4;
}
message SSWebGMAddMailNtf { //project social|game|db
WebUpdateMailItem mail_info = 1;
}
message SSWebGMBanNtf { //project social|game
uint64 ban_uid = 1;
bool is_ban = 2;
uint64 ban_time = 3; //封号间隔时间
int32 ban_type = 4; //1封号2禁言
}
message SSWebGMNoticeNtf { //project social|game
GMNoticeInfo notice_info = 1;
uint64 notice_time = 2;
}
//服务器维护状态
message SSWEBGMServerMaintainNtf { //project social|game
int32 state = 1;
}
//GM封停公会战
message SSWebGMGuildBattle { //project social|guild
}
//删除背包内道具(可以根据道具类型做处理)
message SSWebGMDelItemNtf { //project social|game
uint64 uid = 1;
repeated KeyValueType del_item_list = 2;
}
//////////////////////////webgm
//通知social服务器玩家上线
message SSPlayerOnlineNtf{ //project social
string service_node = 1; //当前所在的服务器节点
PlayerBriefInfo brief_info = 2; //简介信息
}
message SSPlayerOfflineNtf{ //project social|battleboss
uint64 uid = 1;//玩家唯一ID
}
//social通知game当前在线的玩家数量
message SSPlayerOnlineNumNtf { //project game
int32 online_num = 1;
}
//消息发送不成功,存到玩家的离线库中
message SSChatMessageAck{ //project game
int32 error = 1; //错误码
uint64 target_id = 2; //目标玩家
ChatMessageInfo message = 3;//消息内容
int32 type = 4;
}
message SSChatMessageNtf{ //project game
int32 type = 1;//消息类型1私人聊天2世界频道聊天
ChatMessageInfo message = 2;//消息内容
uint64 target_id = 3;//私人聊天,好友聊天时发送的目标玩家
ChatPlayerBriefInfo from_id = 4;//私人聊天,好友聊天时发送的目标玩家
}
message SSGuildChatMessageNtf{ //project guild|social
int32 type = 1;//消息类型1私人聊天2世界频道聊天
ChatMessageInfo message = 2;//消息内容
ChatPlayerBriefInfo from_id = 3;//私人聊天,好友聊天时发送的目标玩家
repeated uint64 uid_list = 4;//需要推送的UID列表
uint64 guild_id = 5;//公会ID
}
message SSGuildNoticeMessageNtf{ //project social
repeated SystemMessage sys_msg = 1;//
uint64 guild_id = 2;//公会ID
repeated uint64 uid_list = 3;//需要推送的UID列表
}
message SSGuildNoticeToRoleNtf{ //project game
repeated SystemMessage sys_msg = 1;//
uint64 guild_id = 2;//公会ID
uint64 uid = 3;//通知的玩家
}
//选择合适的AOI服务器节点
message SSPlayerEnterMapReq{ //project aoi
int32 map_type = 1; //进入地图类型
uint64 client_id = 2; //客户端对的sessionid
string service_node = 3; //当前player所在的gate节点
PlayerShowInfo show_info = 4; //玩家地图显示显示信息
uint64 guild_id = 5; //公会ID
Position pos = 6; //
}
//角色离开地图通知
message SSPlayerLeaveMapNtf{ //project aoi
uint64 uid = 1;
}
//断线重连后重新绑定gate节点信息
message SSPlayerAoiReconnect{ //project aoi
}
//离线后获取最终位置
message SSPlayerLeaveMapReqAck{ //project game
}
//创建流程中名字判断
message SSNameReq { //project db
string name = 1;
int32 zone = 2;//区服[zone]
int32 type = 3;//取名类型 0创号1改名
string old_name = 4;//旧名字
}
message SSNameNtf { //project game
int32 error = 1; //错误码
string name = 2;
int32 type = 3;//取名类型 0创号1改名
}
//玩家显示变更通知
message SSPlayerShowChangeReq{ //project aoi
PlayerShowInfo show_info = 1;
}
//进入boss场景
message SSPlayerEnterChallengeNtf { //project game
uint64 enter_uid = 1;
repeated uint64 notify_list = 2; //通知列表
repeated FightRoleInfo fight_list = 3; //其他玩家列表
uint64 boss_uid = 4;
int32 self_change_play_id = 5;
int32 summon_boss_type = 6;
}
//离开boss场景
message SSPlayerLeaveChallengeNtf { //project game
uint64 leave_uid = 1; //离开的挑战玩家uid
repeated uint64 notify_list = 2; //通知列表
}
//bossHP通知
message SSPlayerChallengeHpNtf { //project game
int32 cur_boss_hp = 1; //当前boss血量
repeated uint64 notify_list = 2; //通知列表
}
//挑战结果通知
message SSPlayerChallengeResultNtf { //project game
int32 result = 1;
repeated uint64 notify_list = 2; //通知列表
}
//////////////////////////mail
//4/5和8选其一根据邮件类型
message SSAddMailNtf { //project social|game|db
int32 mail_config_id = 1; //邮件描述id 当类型是gm时这边的是全局ID需要做特殊处理
int32 mail_type = 2; //邮件类型(来源)
repeated KeyValueType reward_list = 3; //奖励列表
repeated uint64 notify_list = 4; //奖励的玩家列表
repeated int32 mail_param_list = 5; //邮件显示的参数列表例如关卡id名次等
string title = 6;
string content = 7;
}
//////////////////////////rank
//////////////////////////competition
//获取对应赛季信息
//上线时加入选拔季排行列表
message SSGetCompetitionDataReq { //project rank
int32 competition_id = 1; //
int32 competition_type = 2; //表示当前赛季类型
bool is_now_competition = 3; //是否是当前正在进行的赛季
int32 sub_id_num = 4; //结算周期次数
}
message SSGetCompetitionDataAck { //project game
int32 error = 1;
CompetitionInfo competition_data = 2; //对应赛季信息
IdolSeasonData idol_data = 3; //偶像季数据
}
//赛季结算奖励
message SSCompetitionRewardReq { //project rank
int32 competition_id = 1; //
int32 competition_type = 2; //赛季类型
int32 competition_sub_id = 3; //周期结算子序号
bool end_sub_id = 4; //是否是最后一个结算子周期
repeated KeyValueType64 reward_uid_list = 5; //在线玩家处理
}
message SSCompetitionRewardAck { //project game
int32 competition_id = 1; //
int32 competition_sub_id = 2; //周期结算子序号
repeated KeyValueType64 reward_uid_list = 3; //玩家对应奖励
int32 total_rank_count = 4; //赛季结束时总排名玩家
}
//上线时一次性获取历史赛季奖励
message SSCompetitionRewardHistoryReq { //project rank
int32 s_competition_id = 1;//起始历史赛季ID
int32 e_competition_id = 2;
int32 s_competition_sub_id = 3;
int32 e_competition_sub_id = 4;
}
message SSCompetitionRewardHistoryAck { //project game
repeated KeyValueTypeList reward_uid_list = 1; //玩家对应奖励 val:赛季id val2:对应周期 val3:宝箱档位奖励
int32 e_competition_id = 2;
int32 e_competition_sub_id = 3;
}
//更新积分赛季排名
message SSCompetitionUpdateScoreReq { //project rank
uint64 uid = 1;
int32 competition_id = 2;
int32 score = 3;
//一下偶像季专用
uint64 fans_uid = 4;
int32 cur_vote_score = 5;
}
message SSCompetitionUpdateScoreAck { //project game
int32 competition_id = 1;
int32 next_com_score = 2; //下一档最小积分(玩家积分)
int32 self_rank = 3; //当前排名
int32 total_rank = 4; //总人数
int32 section_id = 5; //预计获得宝箱奖励
int32 last_com_score = 6; //低一档最大积分(玩家积分)
}
message SSCompetitionOnVoteNtf { //project game
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 SSCompetitionSelfFansInfoReq { //project rank
uint64 uid = 1; //玩家UID
int32 competition_id = 2; //赛季ID
}
message SSCompetitionSelfFansInfoAck { //project game
int32 error = 1; //错误码
uint64 uid = 2; //玩家UID
repeated FansVoteData fan_list = 3; //粉丝投我的数据Key 粉丝ID value 票数)(策划只需要,固定前十名)
}
//获取偶像排行版
message SSCompetitionVoteRankReq { //project rank
uint64 uid = 1; //玩家UID
int32 page = 2; //页签
int32 competition_id = 3; //赛季ID
}
message SSCompetitionVoteRankAck { //project game
int32 error = 1;
uint64 uid = 2; //玩家UID
int32 page = 3; //页签
repeated FansRankData rank_data = 4; //偶像排行版
bool is_end = 5; //是否结束
}
//点亮宝箱排行榜
message SSCompetitionFansRewardRankReq { //project rank
uint64 uid = 1; //玩家UID
int32 page = 2;
int32 competition_id = 4; //赛季ID
}
message SSCompetitionFansRewardRankAck { //project game
int32 error = 1;
uint64 uid = 2; //玩家UID
int32 page = 3;
repeated FansBoxData data_list = 4; //个人宝箱点亮排名
bool is_end = 5; //是否结束
}
//粉丝领取点亮宝箱奖励
message SSCompetitionFansGetRewardReq { //project rank
uint64 uid = 1; //玩家UID
uint64 idol_uid = 2; //对应的爱豆UID
int32 reward_level = 3; //奖励等级
int32 competition_id = 4; //赛季ID
}
message SSCompetitionFansGetRewardAck { //project game
int32 error = 1;
uint64 uid = 2; //玩家UID
uint64 idol_uid = 3; //对应的爱豆UID
int32 reward_level = 4; //奖励等级
int32 idol_box_count = 5; //爱豆的箱子数量
}
//购买完宝箱通知rank增加宝箱积分
message SSCompetitionAddIdolBoxScoreNtf { //project rank
uint64 uid = 1; //uid
int32 score = 2; //宝箱积分
int32 competition_id = 3; //赛季ID
}
message SSCompetitionFansGetAllRewardReq { //project rank
int32 competition_id = 1;
int32 competition_sub_id = 2;
int32 competition_type = 3;
repeated FansVoteRewardData data = 4;
bool is_finish = 5;
}
message SSCompetitionFansGetAllRewardAck { //project game
int32 competition_id = 1; //
int32 competition_sub_id = 2; //周期结算子序号
repeated FansVoteRewardData data = 3;
}
message SSCompetitionGetPlayerVoteRankReq { //project rank
uint64 uid = 1; //领取ID
uint64 req_uid = 2; //请求的玩家UID
int32 competition_id = 3; //赛季ID
}
message SSCompetitionGetPlayerVoteRankAck { //project game
int32 error = 1; //错误码
FansRankData idol_rank_data = 2; //排行榜
uint64 req_uid = 3; //请求的玩家UID
}
//////////////////////////social
//friend
message SSFriendAddReq { //project social|game
CommonPlayerBriefInfo from_uid = 1; //发起关注的玩家
uint64 add_uid = 2; //被关注的玩家
}
message SSFriendAddAck { //project game|social
int32 error = 1;
uint64 from_uid = 2; //发起关注的玩家
CommonPlayerBriefInfo add_uid = 3; //被关注的玩家
}
//通过social发送给其他game服务器后如果为找到del角色信息会发送给db做处理
message SSFriendDelReq { //project social|game
uint64 from_uid = 1;
uint64 del_uid = 2;
}
message SSFriendDelAck { //project game
int32 error = 1;
uint64 from_uid = 2;
uint64 del_uid = 3;
}
message SSFriendBlackNtf { //project social|game
uint64 from_uid = 1;
uint64 black_uid = 2;
}
//查询在线状态
message SSOnlineStateReq { //project social
int32 pro_type = 1; //操作类型 1表示搜索操作 2表示好友系统获取简介信息
int32 list_type = 2; //显示的列表类型
repeated CommonPlayerBriefInfo brief_info_list = 3; //玩家简介信息
}
message SSOnlineStateAck { //project game
int32 pro_type = 1; //操作类型
int32 list_type = 2; //显示的列表类型
repeated CommonPlayerBriefInfo brief_info_list = 3; //玩家简介信息
}
//////////////////////////////guild
//公会相关消息
message SSGuildOnAddActivityNtf { //project guild
uint64 uid = 1;
uint64 guild_id = 2;
int32 activity = 3; //活跃度
}
message SSGuildBossRefreshNtf { //project game
uint64 uid = 1; //uid
repeated GuildBossTickTime ref_time = 2;
}
//同步公会成员在线状态
message SSGuildOnlineStateReq { //project social
uint64 guild_id = 1; //公会ID
uint64 uid = 2; //玩家ID
}
message SSGuildOnlineStateAck { //project guild
uint64 guild_id = 1; //公会ID
uint64 uid = 2; //玩家ID
uint64 offline = 3; //下线时间
}
//获取新加入公会成员的在线状态
message SSGuildMemberOnlineInfoReq{ //project social
uint64 guild_id = 1;
repeated uint64 uid_list = 2;
}
message SSGuildMemberOnlineInfoAck{ //project guild
uint64 guild_id = 1; //公会ID
repeated KeyValueType64 uid_list = 2; //公会成员在线状态
}
//公会改名通知
message SSGuildNameChangeNtf{ //project social
uint64 guild_id = 1; //公会ID
repeated uint64 uid_list = 2; //公会成员在线状态
string guild_name = 3; //公会名字
}
//玩家上线请求公会信息
message SSOnlineGuildInfoReq{ //project guild
uint64 uid = 1; //uid//服务器填写
uint64 guild_id = 2; //公会ID//服务器填写
bool is_relogin = 3; //是否重新登录
uint64 demon_fight_time = 4;
}
message SSOnlineGuildInfoAck{ //project game
GuildNotifyData data = 1; //公会简介
int64 next_join = 2; //下次加入公会时间
repeated uint32 boss = 3; //当前可挑战boss
repeated MessageContentInfo msgRec = 4; // 公会聊天
SystemMessage GuildSys = 5; // boss狩猎通知
bool in_guild_battle = 6; //true公会战入口开启false公会战入口关闭
}
//公会战挑战占位
message SSGuildBattleChallengeReq { //project guild
int32 guild_battle_idx = 1;
int32 pos_idx = 2;
CommonPlayerBriefInfo bf_info = 3; //服务器使用
uint64 self_guild_id = 4; //服务器使用
uint64 cur_rmb = 5; //当前服务器玩家拥有的金币
int32 buy_challenge_num = 6; //购买的战斗次数
}
message SSGuildBattleChallengeAck { //project game
int32 error = 1; //错误码
int32 guild_battle_idx = 2;
int32 pos_idx = 3;
FightRoleInfo fight_info = 4; //对方玩家信息
GuildPosIdxData challenge_pos_data = 5;
uint64 cost_rmb = 6; //需要花费rmb数量
repeated KeyValueType fight_buff_list = 7; //buff列表
repeated KeyValueType self_buff_list = 8; //自己的buff列表
GuildBattleSelfData self_data = 9; //个人信息
bool use_buy_num = 10; //使用购买次数
}
//贡献点请求
message SSGuildBattleCPRankReq { //project guild
uint64 uid = 1; //玩家的UID
uint64 guild_id = 2; //公会ID
}
message SSGuildBattleCPRankAck { //project game
repeated GuildBattleCP cp_list = 1; //贡献点列表
int32 self_guild_rank = 2; //自己公会贡献点名次
int32 self_guild_cp = 3; //自己公会贡献点
uint64 uid = 10; //玩家的UID
}
//对阵表请求
message SSGuildBattleCountPartReq { //project guild
uint64 uid = 1; //玩家的UID
}
message SSGuildBattleCountPartAck { //project game
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结束
GuildCountPartTable table = 13; //对阵表
}
//MVP信息请求
message SSGuildBattleMvpInfoReq { //project guild
uint64 uid = 1; //玩家的UID
int32 guild_battle_idx = 2; //公会战索引1 / 23 / 4567
}
message SSGuildBattleMvpInfoAck { //project game
int32 error = 1;
int32 guild_battle_idx = 2; //公会战索引1 / 23 / 4567
repeated GuildBattleDetail detail = 3; //公会战 公会的详细信息
CountTableData count_part = 4; //对阵信息
uint64 uid = 5; //玩家的UID
}
//Mvp详情请求
message SSGuildBattleMvpDetailReq { //project guild
uint64 uid = 1; //玩家的UID
int32 mvp_type = 2; //mvp类型1积分 2击杀
int32 req_rank = 3; //请求的起始排名
int32 guild_battle_idx = 4; //公会战索引1 / 23 / 4567
}
message SSGuildBattleMvpDetailAck { //project game
uint64 uid = 1; //玩家的UID
int32 mvp_type = 2; //mvp类型1积分 2击杀
repeated GuildBattleMvp mvp = 3; //mvp列表目前就2个
int32 req_rank = 4; //请求的起始排名
int32 guild_battle_idx = 5; //公会战索引1 / 23 / 4567
}
message SSGuildBattleStageChangeNtf { //project game
bool in_guild_battle = 1; //true公会战入口开启false公会战入口关闭
}
message SSGuildBattleRewardNtf{ //project game
int32 reward_type = 1; //奖励类型
repeated uint64 uid_list = 2; //成员列表
uint64 guild_pre = 3; //会长
int32 guild_round = 4; //公会战轮次
}
message SSGuildBattleOnlineGetRewardReq { //project guild
uint64 uid = 1; //玩家ID
int32 cur_reward_id = 2; //当前公会排名领奖ID
int32 mvp_reward_id = 3; //公会战MVP排名领奖ID
}
message GuildBattleReward {
bool is_pre = 1;
int32 reward_type = 2; //奖励类型 1冠军2亚军 33-4名44-8名
}
message SSGuildBattleOnlineGetRewardAck { //project game
repeated GuildBattleReward round_reward = 1; //轮次奖励
int32 cur_battle_round = 2; //(领奖到此为止)
repeated MvpRewardInfo score_mvp = 3; //积分MVP
repeated MvpRewardInfo killer_mvp = 4; //击杀MVP
int32 cur_mvp_round =5; //mvp奖励
}
message SSGuildBattleCPChangeNtf { //project game
}
//公会战GM
//
message SSGuildBattleGMAddGuildCPReq { //project guild
uint64 guild_id = 1;
uint32 add_score = 2;
uint64 uid = 3;
}
//添加战斗积分
message SSGuildBattleGMAddGuildScoreReq { //project guild
int32 battle_index = 1;
int32 guild_index = 2;
int32 add_score = 3;
}
//GM会长转让
message SSGuildBattleGMChangeLeaderReq { //project guild
uint64 guild_id = 1;
}
//GM会长转让
message SSGuildBattleGMKickMemberReq { //project guild
uint64 guild_id = 1;
uint64 uid = 2;
}
//GM设置公会魔王伤害
message SSGuildBattleGMDemonDamageReq { //project guild
}
//取消公会战公会操作拦截
message SSGuildBattleGMOperatorReq { //project guild
int32 operator = 1; //0正常 1取消拦截
}
message MvpRewardInfo {
uint64 uid = 1; //
int32 reward_type = 2; //战斗轮次奖励类型
int32 battle_index = 3; //战斗场次
}
//公会战MVP奖励
message SSGuildBattleSendMvpRewardReq { //project game
int32 guild_battle_round = 1;
repeated MvpRewardInfo score_mvp = 2; //积分MVP
repeated MvpRewardInfo killer_mvp = 3; //击杀
}
//公会战MVP奖励
message SSGuildBattleSendMvpRewardAck { //project guild
int32 guild_battle_round = 1;
repeated MvpRewardInfo score_mvp = 2; //积分MVP
repeated MvpRewardInfo killer_mvp = 3; //击杀
}
//公会战购买buff请求
message SSGuildBattleBuyBuffReq { //project guild
int32 guild_battle_idx = 1;
repeated int32 buff_id_list = 2;
uint64 uid = 3;
uint64 guild_id = 4; //
uint64 total_gold = 5; //总金币数量
}
//公会战购买buff返回
message SSGuildBattleBuyBuffAck { //project game
int32 error = 1; //错误码
uint64 uid = 2; //购买结果
repeated KeyValueType need_res = 3; //需要的资源
GuildBattleSelfData self_data = 4; //个人信息
int32 guild_battle_idx = 5;
}
message SSGuildBattleRewardReq { //project guild
}
message SSGuildDemonFightReq { //project guild
int32 demon_id = 1;
uint64 damage = 2; //总伤害
uint64 guild_id = 3;
uint64 uid = 4;
}
message SSGuildDemonFightAck { //project game
int32 error = 1;
int32 demon_id = 2; //bossid
int32 fight_count = 3; //剩余战斗次数
uint64 total_damage = 4; //boss总伤害
uint64 uid = 5; //唯一ID
uint64 refresh_time = 6; //
int32 free_fight_count = 7; //免费战斗次数
//系统播报数据
string guild_name = 9; //公会名称
int32 reward_level = 10; //奖励档位
uint64 req_uid = 11; //请求UID
}
message SSGuildDemonOnlineGetRewardNtf { //project game
int32 demon_id = 1;
repeated KeyValueType reward_list = 2;
}
message SSGuildDemonRewardNtf { //project game
int32 demon_id = 1;
int32 demon_level = 2;
uint64 total_damage = 3;
repeated uint64 uid_list = 4;
}
//////////////////////////expedition
message SSExpeditionHelpReq { //project social|game
uint64 be_helped_uid = 1; //被救助玩家uid
CommonPlayerBriefInfo from_uid = 2; //发起救助玩家uid
uint64 help_msg_send_time = 3; //求助消息发送时的时间
}
message SSExpeditionHelpAck { //project game|social
int32 error = 1;
uint64 be_helped_uid = 2; //被救助玩家uid
CommonPlayerBriefInfo from_uid = 3; //发起救助玩家uid
}
//勇士积分排行
message SSExpeditionScoreRankListReq { //project rank
int32 start_idx = 1;
}
message SSExpeditionScoreRankListAck { //project game
int32 error = 1; //错误码
repeated ExpeditionRankInfo rank_list = 2;
ExpeditionRankInfo self_rank_info = 3;
int32 start_idx = 4;
}
//积分变动通知
message SSExpeditionUpdateScoreRankNtf { //project rank
uint32 cur_score = 1; //玩家历史最高积分
}
//////////////////////////invitation
//填写邀请码成为导师成员
message SSInvitationBeToMemberReq { //project game|social
uint64 master_number = 1; //导师邀请码
uint64 master_uid = 2; //导师uid
InvitationMemberValData self_uid = 3; //自身uid
}
message SSInvitationBeToMemberAck { //project game|social
int32 error = 1;
uint64 master_number = 2; //导师邀请码
uint64 master_uid = 3; //导师uid
InvitationMemberValData self_uid = 4; //自身uid
}
//master不在线操作数据库
message SSInvitationBeToMemberDBReq { //project db
uint64 master_number = 1; //导师邀请码
uint64 master_uid = 2; //导师uid
InvitationMemberValData self_uid = 3; //自身uid
}
message SSInvitationBeToMemberDBAck { //project game
int32 error = 1;
uint64 master_number = 2; //导师邀请码
uint64 master_uid = 3; //导师uid
InvitationMemberValData self_uid = 4; //自身uid
}
//解除关系
message SSInvitationDelMemberNtf { //project social|game
uint64 master_uid = 1; //导师uid
repeated uint64 del_member_list = 2;
}
//等级,充值等数据变更时通知导师
message SSInvitationMemberNoticeMasterReq { //project social|game
uint64 self_uid = 1;
uint64 master_uid = 2; //master uid
KeyValueType param = 3; //key任务类型 val数值
}
message SSInvitationMemberNoticeMasterAck { //project social|game
int32 error = 1;
uint64 self_uid = 2;
uint64 master_uid = 3; //master uid
KeyValueType param = 4; //key任务类型 val数值
}
//////////////////////////pay
//订单对应的奖励信息
message PayOrderSaveInfo {
int32 goods_id = 1;
int32 goods_type = 2;
string goods_name = 3;
uint64 cp_order_id = 4; //产品订单号
float amount = 5; //支付总额
int32 count = 6; //购买数量
uint64 order_process_time = 7; //订单操作时间
int32 order_state = 8; //订单状态(枚举说明PayOrderState common.proto)
uint64 uid = 9; //玩家id
repeated KeyValueType reward_list = 10; //支付获得奖励
string sdk_order_id = 11; //SDK对应订单号
string pay_method = 12; //SDK对应的充值通道
string pay_currency = 13; //充值货币种类
uint64 pay_time = 14; //支付时间
string pay_channel = 15; //支付渠道
int32 s_id = 16; //当前服务器ID
int32 goods_pay_id = 17; // 对应paycfg中的唯一id
string server_region = 18; // 服务器所在大区(由配置文件指定)
float kr_cur = 19; //韩国货币
int32 activity_id = 20; //活动ID
}
//充值订单数据保存/状态变更
message SSPayInfoSaveReq { //project db
PayOrderSaveInfo pay_order_info = 1;
bool save_notify = 2; //表示十分是初次生成订单
}
message SSPayInfoSaveAck { //project game
int32 error = 1;
PayOrderSaveInfo pay_order_info = 2;
}
//上线获取成功成但是没有获取奖励的订单数据
message SSPayInfoOrderOKListGetReq { //project db
}
message SSPayInfoOrderOkListGetAck { //project game
repeated PayOrderSaveInfo pay_order_ok_list = 2;
}
//充值成功后gmweb通知给game服务器
message SSPayInfoOrderNtf { //project social|game
PayOrderSaveInfo pay_order_info = 1;
}
// 第三方充值,直接发货
message SSThirdPayOrder { //project social|game
PayOrderSaveInfo pay_order_info = 1;
}
//////////////////////////百人道场
//获取占位信息
message SSDaoChang100PosInfoListReq { //project rank
repeated int32 pos_idx_list = 1;
}
message SSDaoChang100PosInfoListAck { //project game
int32 error = 1;
repeated DaoChang100PosIdxData pos_data_list = 2; //占位信息
}
//占领日志信息
message SSDaoChang100LogReq { //project rank
uint64 begin_time = 1;
}
message SSDaoChang100LogAck { //project game
repeated DaoChang100Log log_list = 1;
bool is_end = 2;
}
//挑战占位
message SSDaoChang100ChallengeReq { //project rank
int32 pos_idx = 1;
bool has_challenge_count = 2; //当前是否有挑战次数
CommonPlayerBriefInfo owner_brief = 3; //发起挑战玩家
}
message SSDaoChang100ChallengeAck { //project game
int32 error = 1; //错误码
int32 pos_idx = 2;
FightRoleInfo fight_info = 3; //对方玩家信息
int32 robot_id = 4; //机器人id
uint64 reward_delta_time = 5; //占位奖励时间
DaoChang100PosIdxData self_pos_data = 6; //自身占位成功后的信息
DaoChang100PosIdxData challenge_pos_data = 7; //挑战位置占位信息
}
//挑战占位战斗结果上报
message SSDaoChang100ChallengeResultReq { //project rank
int32 pos_idx = 1;
uint64 pos_uid = 2; //挑战时位置上的玩家ID(机器人id)
CommonPlayerBriefInfo owner_brief = 3; //发起挑战玩家
bool battle_result = 4;
}
message SSDaoChang100ChallengeResultAck { //project game
int32 error = 1; //错误码
int32 pos_idx = 2;
bool battle_result = 3; //战斗结果
bool empty_pos_idx = 4; //结束时占领的是
DaoChang100PosIdxData self_pos_data = 5; //自身占位成功后的信息
}
message SSDaoChang100ChallengeResultNtf { //project game|social
uint64 ntf_uid = 1; //被动变化玩家uid
bool pos_idx_data_change = 2;
DaoChang100PosIdxData ntf_pos_data = 3; //被动变化玩家占位信息
bool from_other_game = 4;
uint64 challenge_uid = 5; //挑战该占位的玩家
int32 battle_result = 6; //1胜利 2失败
}
//获取收益奖励
message SSDaoChang100TimeRewardReq { //project rank
uint64 uid = 1;
uint64 base_reward_time = 2;
uint64 reward_interval_time = 3;
uint64 now_time = 4;
}
message SSDaoChang100TimeRewardAck { //project game
repeated KeyValueType pos_idx_reward_list = 1;//位置对应奖励次数
uint64 base_reward_time = 2;
uint64 reward_interval_time = 3;
uint64 now_time = 4;
}
//道场公会贡献点排行更新
message SSDaoChang100GuildRankUpdateNtf { //project guild
uint64 uid = 1;
uint64 guild_id = 2;
uint32 score = 3;
}
//////////////////////////精彩活动
message SSActivitiesCollectionServerDataReq { //project rank
int32 activity_id = 1;
int32 reward_idx = 2; //兑换奖励时使用(为0表示获取全部)
int32 server_limit_num = 3; //上限次数
repeated ExchangeInfo pet_data = 4; //兑换宠物
}
message SSActivitiesCollectionServerDataAck { //project game
int32 error = 1; //错误码
int32 activity_id = 2;
repeated KeyValueType data_list = 3; //全局相关数据
int32 reward_idx = 4;
repeated ExchangeInfo pet_data = 5; //兑换的宠物
}
message CollectionSaveData {
int32 activity_id = 2;
repeated KeyValueType data_list = 3; //全局相关数据
}
message SSActivitiesCollectionServerDataNtf { //project social|game
int32 activity_id = 1;
int32 reward_idx = 2;
int32 server_cur_num = 3; //当前服务器已经兑换次数
}
message SSWebGMHeadChange { //project social|game
uint64 uid = 1;
int32 head_id = 2; // 称号id
int32 state = 3; // 称号状态
}