lingsuanClient/protobuf/proto/client_msg.proto
2025-06-07 17:07:13 +08:00

669 lines
20 KiB
Protocol Buffer
Raw Permalink Blame History

This file contains ambiguous Unicode characters

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

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; // 语音
}