lingsuanClient/protobuf/proto/client_msg.proto

669 lines
20 KiB
Protocol Buffer
Raw Normal View History

2025-06-07 17:07:13 +08:00
package com.wing.proto;
//包头的协议号 = 模块号 * 1000 + 子协议号
enum durak_room_user_state
{
ROOM_USER_STATE_NEW_JOIN = 0; //新加入
ROOM_USER_STATE_NORMAL = 1; //正常
ROOM_USER_STATE_READY = 2; //准备
ROOM_USER_STATE_INGAME = 3; //游戏中
}
message string_key_string_value
{
optional string key = 1;
optional string value = 2;
}
message string_key_int_value
{
optional string key = 1;
optional int64 value = 2;
}
message int_key_string_value
{
optional int64 key = 1;
optional string value = 2;
}
message int_key_int_value
{
optional int64 key = 1;
optional int64 value = 2;
}
message durak_room_user_simple_info
{
optional int64 account = 1; //账号
optional string name = 2; //昵称
optional string avatar = 3; //头像
optional int32 sex = 4; //性别(0女1男)
optional int64 lvl = 5; //等级
optional int32 seat = 6; //座位
optional durak_room_user_state state = 7; //状态
optional int64 ready_end_time = 8; //准备超时时间
}
// 1 请求入口服务器
message entrance_quest
{
optional int64 account = 1; //账号
optional int64 channel = 2; //登录渠道
optional int64 time = 3; //时间戳
optional string checksum = 4; //校验
}
// 2 请求入口服务器返回
message entrance_reply
{
optional string result = 1; //提示内容
optional string ip = 2; //服务器IP
optional int64 port = 3; //服务器端口
}
// 3 请求登录
message login_quest
{
optional int64 account = 1; //账号
optional int64 channel = 2; //登录渠道
optional int64 time = 3; //时间戳
optional string checksum = 4; //校验
optional string language = 5; //语言
optional string name = 6; //昵称
optional int64 version = 7[default = 0]; //0:线上版本1审核版本2开发版本
optional string notice_md5 = 8; //客户端缓存公告校验码
optional string ver = 9; //版本号
optional bool safe_mode = 10; //安全模式
optional string idfa = 11; //设备号
optional string nationality = 12; //国家区号
optional bool is_simulator = 13; //是否为安卓模拟器登录
}
// 4 登录结果
message login_reply
{
optional string result = 1; // 提示内容
optional int64 server_time = 2; // 服务器时间戳
optional int64 timezone = 3; // 服务器时区
optional bool is_new = 4; // 新用户标识(需要修改昵称,如fb有默认的可用昵称,首次登录时也可能为false)
optional int64 sequence = 5; // 登录序号
optional int64 regist_channel = 6; // 注册渠道
optional string create_time = 7; // 注册日期
optional bool is_new_account = 8; // 新用户(新账号第一次登录)
}
// 5 注销请求
message logout_quest
{
optional int64 account = 1; //账号
optional string client_id = 2; //包名
optional string token = 3; //token
}
// 6 注销返回
message logout_reply
{
optional string result = 1; //提示内容
optional int64 account = 2; //账号
}
// 11 查看他人资料
message show_userinfo_quest
{
optional int64 account = 1; // 账号
}
// 12 查看他人资料返回
message show_userinfo_reply
{
optional int64 account = 1; // 账号
optional string avatar = 2; // 头像
optional int64 lvl = 3; // 等级
optional int32 sex = 4; // 性别
optional string name = 5; // 姓名
optional int64 game_count = 11; // 对局数Durak
optional int64 income = 12; // 累计盈利
optional int64 biggest_win = 13; // 单局最多盈利
optional int64 win_rate = 14; // 胜率durak
}
// 15 修改用户姓名请求
message update_username_quest
{
optional string name = 1; //姓名
}
// 16 修改用户姓名返回
message update_username_reply
{
optional string result = 1; //提示内容
optional string name = 2; //姓名
optional int32 free_count = 3; //免费次数
}
// 21 请求修改头像
message modify_avatar_quest
{
optional int32 avatar_type = 1; //0自定义头像、社媒头像默认头像1-n
optional bytes data = 2; //自定义头像数据
}
// 22 请求修改头像返回
message modify_avatar_reply
{
optional string result = 1; //提示内容
optional string avatar = 2; //修改后的头像路径
}
// 23 玩家基础数据请求
// 24 玩家基础数据返回
message user_base_info_reply
{
optional int64 coin = 1; //金币
optional int64 jetton = 2; //筹码
optional string name = 3; //昵称
optional string avatar = 4; //头像
optional string account = 5; //登录账号
optional string telephone = 6; //手机号
optional string mail = 7; //邮箱
optional int64 create_time = 8; //账号创建时间戳
optional int64 lvl = 9; //等级
optional int64 exp = 10; //经验
optional int64 game_count = 11; //对局数Durak
optional int64 income = 12; //累计盈利
optional int64 biggest_win = 13; //单局最多盈利
optional int64 win_rate = 14; //胜率durak
optional int32 free_update_name_count = 15; //名字免费修改次数
}
// 25 更改语言请求
message language_change_quest
{
optional string language = 1; //语言
}
// 26 更改语言返回
message language_change_reply
{
optional string result = 1; //提示内容
}
// 29 请求修改密码
message change_password_quest
{
optional string password = 1; //密码
optional string old_password = 2; //旧密码
}
// 30 修改密码返回
message change_password_reply
{
optional string result = 2; //提示
}
// 31 请求绑定账号
message account_bind_quest
{
optional string account = 1; //登录账号(非ID)
optional string password = 2; //登录密码
}
// 32 绑定账号返回
message account_bind_reply
{
optional string result = 1; //提示内容
}
// 33 举报头像
message report_avatar_quest
{
optional int64 account = 1; // 被举报的账号
}
// 34 举报头像返回
message report_avatar_reply
{
optional string result = 1; // 提示
}
// 51 同步服务器时间
message sync_server_time_quest
{
optional int64 client_time = 1;
}
// 52 服务器时间返回
message sync_server_time_reply
{
optional int64 client_time = 1;
optional int64 server_time = 2;
}
// 53 领取破产礼包奖励
// 54 领取破产礼包奖励返回
message get_bankrupt_gift_reward_reply
{
optional string result = 1; // 提示
optional int32 count = 2; // 剩余次数
}
// 101 发送GM指令
message send_gm_quest
{
optional string gm_str = 1; // GM文本
}
// 102 GM指令返回
message send_gm_reply
{
optional string result = 1; // 提示文本
}
// 301 服务器配置下发
message server_config_notify
{
repeated int_key_string_value str_list = 1; // 字符串键值列表
repeated int_key_int_value int_list = 2; // 整数键值列表
}
// 302 上线推送玩家当前所在房间
message user_current_room_notify
{
optional int64 room_id = 1; // 房间id
}
// 303 上线推送破产礼包相关信息
message bankrupt_gift_info_notify
{
optional int32 count = 1; // 剩余可领取次数
optional int64 bankrupt_value = 2; // 破产值
optional int64 reward_value = 3; // 奖励值
}
// 312 用户基础信息变动通知
message user_base_info_change_notify
{
optional int64 jetton = 1; //筹码
optional int64 coin = 2; //金币
optional int64 lvl = 3; //等级
optional int64 exp = 4; //经验
}
// 996 同一账号互踢下线弹框通知
message kick_account_tips_notify
{
optional string content = 1; //提示内容
}
// 997 服务器控制前端提示通知
message tips_notify
{
optional string content = 1; // 提示内容
optional int64 model = 2; // 模式(0:普通弹框, 1:奖励弹框)
optional string item_str = 3; // 道具详情
optional string title = 4; // 弹框标题
optional string btn_text = 5; // 按钮文案
}
// 商店商品信息
message store_goods_info
{
optional int32 id = 1; // 商品ID
optional string name = 2; // 商品名称
optional bool can_buy = 3; // 是否能购买
optional int32 price = 4; // 现价
optional int32 base_price = 5; // 原价
optional int32 item_id = 6; // 购买的道具id
optional int32 count = 7; // 商品数量
optional int32 buy_consume = 8; // 购买消耗
optional int32 position = 9; // 顺序优先级
optional string ac_discount = 10; // 折扣百分比
}
// 1001 商品列表请求
message store_list_quest
{
optional int32 type = 1; // 页签类型
}
// 1002 商品列表返回
message store_list_reply
{
optional int32 type = 1; // 页签类型
repeated store_goods_info list = 2; // 商品列表
}
// 1003 购买商品请求
message store_buy_goods_quest
{
optional int32 id = 1; // 商品ID
}
// 1004 购买商品返回
message store_buy_goods_reply
{
optional int32 id = 1; // 商品ID
optional string result = 2; // 提示文本
}
message durak_hall_room_info
{
optional int32 id = 1; // 大厅房间id
optional int64 bet = 2; // 赌注大小
optional int32 player_count = 3; // 房间人数
optional int32 is_tyro = 4; // 是否新手房
}
// 4001 获取大厅房间列表
// 4002 获取大厅房间列表返回
message durak_hall_room_list_reply
{
repeated durak_hall_room_info room_list = 1; // 房间列表
optional string result = 2; // 提示文本
}
// 4003 创建私人房请求
message durak_private_room_create_quest
{
optional int64 bet = 1; // 赌注
optional int32 seat = 2; // 牌桌座位上限
optional int32 card_group = 3; // 牌组
optional int32 def_mode = 4; // 防守模式1:Throw-in 2:Transfer)
optional int32 atk_mode = 5; // 进攻模式1:仅有上下家 2:所有人)
}
// 4004 创建私人房返回
message durak_private_room_create_reply
{
optional int64 room_id = 1; // 房间id
optional string result = 2; // 提示文本
optional int64 need_bet = 3; // bet不足时返回房间所需bet
}
// 4005 进入大厅房间请求(快速匹配)
message durak_enter_hall_room_quest
{
optional int32 id = 1; // 大厅房间id
repeated int32 seat = 2; // 牌桌座位上限
repeated int32 card_group = 3; // 牌组
repeated int32 def_mode = 4; // 防守模式1:Throw-in 2:Transfer)
repeated int32 atk_mode = 5; // 进攻模式1:仅有上下家 2:所有人)
}
// 4006 进入大厅房间返回
message durak_enter_hall_room_reply
{
optional int64 room_id = 1; // 房间id
optional string result = 2; // 提示文本
optional int64 need_bet = 3; // bet不足时返回房间所需bet
}
// 4007 加入房间请求
message durak_enter_room_quest
{
optional int64 room_id = 1; // 房间id
}
// 4008 加入房间返回
message durak_enter_room_reply
{
optional int64 room_id = 1; // 房间id
optional string result = 2; // 提示文本
optional int64 need_bet = 3; // bet不足时返回房间所需bet
}
// 4009 离开房间请求
message durak_leave_room_quest
{
optional int64 room_id = 1; // 房间id
}
// 4010 离开房间返回
message durak_leave_room_reply
{
optional int64 room_id = 1; // 房间id
}
// 4011 房间准备请求
message durak_room_ready_quest
{
optional int64 room_id = 1; // 房间id
}
// 4012 房间准备返回
message durak_room_ready_reply
{
optional int64 room_id = 1; // 房间id
optional string result = 2;
}
// 4013 牌桌操作请求
message durak_room_operate_quest
{
optional int64 room_id = 1; // 房间id
optional int32 opt = 2; // 操作id(1.进攻者出牌 2.防守者出防守牌 3.防守者Transfer 4.pass/take 5.协助者出牌 6.撤回出牌 7.退出挂机状态 8.进入挂机 9.投降 10.设置结束离开)
optional int32 param1 = 3; // 参数1
optional int32 param2 = 4; // 参数2
optional int32 session_id = 5; // 会话id
}
// 4014 牌桌操作返回
message durak_room_operate_reply
{
optional string result = 1; // 提示文本
optional int32 session_id = 5; // 会话id
}
// 4015 换座请求
message durak_room_swap_seat_quest
{
optional int64 room_id = 1; // 房间id
optional int32 target_seat = 2; // 目标座位号
}
// 4016 换座请求返回
message durak_room_swap_seat_reply
{
optional string result = 1; // 提示文本
}
message durak_game_record
{
optional int32 room_type = 1;
optional int64 bet = 2;
optional int64 profit = 3;
optional int32 seat = 4;
optional string start_time = 5;
optional int32 card_group = 6;
optional int32 atk_mode = 7;
optional int32 def_mode = 8;
optional int32 win_rank = 9;
}
// 4017 查询对局记录
// 4018 查询对局记录返回
message get_durak_game_record_reply
{
repeated durak_game_record record_list = 1;
}
// 4019 重进牌局请求
message durak_reenter_room_quest
{
optional int64 room_id = 1; // 房间id
}
// 4020 重进牌局返回
message durak_reenter_room_reply
{
optional int64 room_id = 1; // 房间id
optional string result = 2; // 提示文本
}
// 4021 牌桌信息请求(测试用)
message durak_desktop_info_quest
{
optional int64 room_id = 1; // 房间id
}
// 4022 牌桌信息返回(测试用)
message durak_desktop_info_reply
{
optional durak_desktop_info_notify desktop_info = 1; // 牌桌信息
}
// 4051 房间聊天请求
message room_chat_quest
{
optional int64 room_id = 1; // 房间id
optional int32 chat_type = 2; // 聊天类型:1.文本 2.表情 3.语音
optional string text_id = 3; // 文本id
optional string text = 4; // 文本内容
optional int64 emoji_id = 5; // 表情id
optional bytes voice = 6; // 语音
}
// 4052 房间聊天请求返回
message room_chat_reply
{
optional string result = 1; // 提示文本
}
// 4301 durak房信息下发
message durak_room_info_notify
{
optional int64 founder_account = 1; // 创建者
optional int64 room_id = 2; // 房间id
optional int32 room_count = 3; // 房间人数
optional int64 bet = 4; // 赌注
optional int32 seat = 5; // 牌桌座位上限
optional int32 card_group = 6; // 牌组
optional int32 def_mode = 7; // 防守模式1:Throw-in 2:Transfer)
optional int32 atk_mode = 8; // 进攻模式1:仅有上下家 2:所有人)
repeated durak_room_user_simple_info users = 9; // 用户信息
optional int64 start_time = 10; // 开局时间
}
// 4302 离开房间通知
message durak_room_leave_notify
{
optional int64 room_id = 1; //房间ID
optional int64 account = 2; //账号
optional bool quit = 3; //true离开
}
// 4303 房间准备开始通知
message durak_room_ready_go_notify
{
optional int64 room_id = 1; //房间ID
optional int64 start_time = 2; //开始时间戳
}
// 4304 房间新进玩家通知
message durak_room_new_user_notify
{
optional int64 room_id = 1; //房间ID
optional durak_room_user_simple_info user = 2; //用户信息
}
message durak_table_card_info
{
optional int32 atk_card_id = 1; // 进攻牌id
optional int32 def_card_id = 2; // 防守牌id
}
message durak_order_info
{
optional int64 account = 1; // 账号
optional int32 is_take_pass = 2; // 是否take或者pass 1是 0否
optional int32 win_rank = 3; // 胜利名次0未胜利
optional int32 card_num = 4; // 手牌数
repeated int32 card_list = 5; // 玩家手牌(只会下发自己的手牌信息)
optional int64 win_bet = 6; // 赢取筹码
optional int32 withdraw_num = 7; // 剩余撤回次数
optional int32 hangup_state = 8; // 挂机状态1挂机 0非挂机
optional int32 seat = 9; // 座位号
optional int32 opt = 10; // 当前可执行的操作第1位take/pass 第2位进攻 第3位防守 第4位Transfer 第5位撤回出牌
optional int64 countdown = 11; // 玩家倒计时
optional int32 is_over_leave = 12; // 是否结束后离开, 1是 0否
}
// 4305 牌局信息下发
message durak_desktop_info_notify
{
optional int64 room_id = 1; // 房间id
optional int32 state = 2; // 牌桌状态
optional int32 king_card = 3; // 王牌id
optional int32 card_count = 4; // 公共牌堆剩余数量
optional int32 discard_num = 5; // 弃牌堆数量
repeated durak_table_card_info table_cards = 6; // 牌桌上的牌信息
optional int64 cur_attacker = 7; // 当前进攻方
optional int64 cur_defender = 8; // 当前防守方
repeated durak_order_info order_list = 9; // 出牌顺序以及一些附加信息
optional int64 transfer_cd = 10; // transfer的CD处于CD期间无法Transfer
}
// 4306 用户操作广播
message durak_desktop_opt_notify
{
optional int64 room_id = 1; // 房间id
repeated int64 accounts = 2; // 账号列表
optional int64 time = 3; // 当前时间
optional int32 opt = 4; // 操作id(1.进攻者出牌 2.防守者出防守牌 3.防守者Transfer 4.pass/take 5.协助者出牌 6.自己补牌 7.他人补牌 8.牌进入弃牌堆 9.牌桌牌进入防守者手牌 10.进入倒计时 11.玩家胜利 12.牌桌状态改变 13.撤回出牌 14.操作状态改变 15.防守结果下发 16.挂机状态改变 17.进攻者防守者改变 18.弃置牌桌和所有玩家的牌 19.TransferCD改变)
optional int64 param1 = 5; // 参数1
optional int64 param2 = 6; // 参数2
optional int64 param3 = 7; // 参数3
repeated int64 param4 = 8; // 参数4列表
}
// 4307 下发牌局开始
message durak_desktop_start_notify
{
optional durak_desktop_info_notify desktop_info = 1; // 牌桌信息
optional int64 time = 2; // 发牌结束时间
}
message durak_update_key_value
{
optional int64 account = 1; // 用户id
repeated string_key_string_value str_values = 2; // 字符串键值列表
repeated string_key_int_value int_values = 3; // 整数键值列表
}
// 4308 下发房间用户信息改变
message durak_user_info_change_notify
{
optional int64 room_id = 1; // 房间id
repeated durak_update_key_value update_list = 2; // 更新列表
}
// 4350 房间聊天广播
message room_chat_notify
{
optional int64 room_id = 1; // 房间id
optional int64 account = 2; // 发言账号
optional int32 chat_type = 3; // 聊天类型:1.文本 2.表情 3.语音
optional string text_id = 4; // 文本id
optional string text = 5; // 文本内容
optional int64 emoji_id = 6; // 表情id
optional bytes voice = 7; // 语音
}