网络层

This commit is contained in:
chen wei bo
2025-08-15 00:36:54 +08:00
parent 80dcd70415
commit 9c67163cfd
28 changed files with 21014 additions and 1382 deletions
+37
View File
@@ -0,0 +1,37 @@
syntax = "proto3";
option go_package = "./pt";
package ProtoMsg;
import "error.proto";
//公用消息回复
message CommonRsp {
ErrorCode RetCode = 1; //错误码,成功的话是0
string ErrMsg = 2;
int32 MsgId = 3;
int32 SubMsgId = 4;
int32 DataType = 5; //数据类型,1json数据;2protobuff数据
string Data = 6; //回复数据内容
}
enum MsgId {
None = 0; //空,不使用
Account = 1; //账号相关
PlayerData = 2; //通用玩家数据
Admin = 99; //管理端相关
}
enum SubMsgId_Account {
Account_None = 0; //空,不使用
Login = 1; //登录 /login
}
enum SubMsgId_PlayerData {
PlayerData_None = 0; //空,不使用
QueryPlayerData = 1; //请求好友列表 /playerdata/query_player_data, QueryPlayerDataReq
SavePlayerData = 2; //请求新手引导信息 /playerdata/save_player_data, SavePlayerDataReq
}
+28
View File
@@ -0,0 +1,28 @@
syntax = "proto3";
option go_package = "./pt";
package ProtoMsg;
enum ErrorCode {
Succeed = 0; //成功
TokenWrong = 1; //Token验证失败
TokenExpire = 2; //Token过期
SystemFail = 3; //系统错误
RequestParamWrong = 4; //请求参数有误
HeaderParamWrong = 5; //Header参数有误
ConfigError = 6; //配置错误
MachineIdentifierNotMathch = 7; //机器识别码不匹配
ModuleNotOpen = 10; //模块未开启
SystemError = 100; //服务端内部错误,错误原因和描述不固定
RewardClaimed = 101; //奖励已经领取了
ItemNotEnough = 102; //需要的物品不足
ItemConfigNotExist = 103; //物品配置不存在
PlayerNotExist = 104; //玩家不存在
PlayerLevelNotEnough = 105; //玩家等级不足
PlayerNameAlreadyExist = 106; //玩家名字已经存在
RewardNotAchieve = 107; //奖励未达成
}
+29 -8
View File
@@ -1,14 +1,35 @@
syntax = "proto3";
option go_package = "./pt";
package ProtoMsg;
// 登录请求
//请求登录
message LoginReq {
string username = 1; // 用户名
string password = 2; // 密码
string GameName = 1; //游戏名字,作为不同游戏的标识
string Identifier = 2; //身份识别码,游客的话是设备号,微信的话是openid,googleplay用户的话是gp平台uid
int32 IdentityType = 3; //身份类型,1:游客;2:微信;3:googleplay4:寰城
int32 OperateType = 4; //操作类型,1:登录界面;2:断线重连;3:其他
string ShareDeposit = 5; //微信邀请分享的寄存内容,如果不是邀请玩家,就填空
optional string MachineIdentifier = 6; //机器设备名
optional string SdkUid = 7; //sdk体系的UID,比如寰城
}
// 登录响应
message LoginRes {
bool success = 1; // 是否成功
string token = 2; // 登录成功返回的 token
string message = 3; // 失败时的错误信息
//登录回复
message LoginRsp {
string GameName = 1; //游戏名字
string Identifier = 2; //身份识别码,游客的话是设备号,googleplay用户的话是gp平台uid
int32 IdentityType = 3; //身份类型,1:游客;2:微信;3googleplay
int32 OperateType = 4; //操作类型,1:登录界面;2:断线重连;3:其他
int64 Uid = 5; //玩家Uid
string Token = 6; //临时有效的token认证
int64 ServerTime = 7; //服务端时间戳
int32 TimezoneOffset = 8; //服务器时区
string Ip = 10; //公网IP
optional string MachineIdentifier = 11; //机器设备名
optional string SdkUid = 12; //sdk体系的UID,比如寰城
optional bool IsNewGuide = 13; //是否新手
optional bool IsNewRegist = 14; //是否刚注册
optional int64 LastLoginTime = 15; //上次登陆时间
}
+41
View File
@@ -0,0 +1,41 @@
syntax = "proto3";
option go_package = "./pt";
package ProtoMsg;
import "google/protobuf/descriptor.proto";
//请求拉取玩家数据
message QueryPlayerDataReq {
bool IsAll = 1; //是否要全部拉取
string GameName = 2; //游戏名字
repeated string DataFlagList = 3; //IsAll为false时,指定要拉取的数据标识
}
//返回拉取玩家数据
message QueryPlayerDataRsp {
bool IsAll = 1; //是否要全部拉取
string GameName = 2; //游戏名字
repeated PlayerDataPair PlayerDataList = 3; // 玩家数据列表
}
//玩家数据
message PlayerDataPair {
string DataFlag = 1; //数据标识
string Content = 2; //数据内容
}
//请求保存玩家数据
message SavePlayerDataReq {
string GameName = 1; //游戏名字
string DataFlag = 2; //数据标识
string Content = 3; //数据内容
}
//返回保存玩家数据的结果
message SavePlayerDataRsp {
string GameName = 1; //游戏名字
string DataFlag = 2; //数据标识
}
-22
View File
@@ -1,22 +0,0 @@
syntax = "proto3";
package user;
// 用户信息
message UserInfo {
int32 id = 1; // 用户ID
string nickname = 2; // 昵称
string email = 3; // 邮箱
}
// 获取用户信息请求
message GetUserReq {
int32 id = 1; // 要查询的用户ID
}
// 获取用户信息响应
message GetUserRes {
bool success = 1; // 是否成功
UserInfo data = 2; // 用户数据
string message = 3; // 错误信息
}