五、MMO游戏的Proto3协议

MsgID Client Server 描述
1 - SyncPid 同步玩家本次登录的ID(用来标识玩家)
2 Talk - 世界聊天
3 Position - 移动
200 - BroadCast 广播消息(Tp 1 世界聊天 2 坐标(出生点同步) 3 动作 4 移动之后坐标信息更新)
201 - SyncPid 广播消息 掉线/aoi消失在视野
202 - SyncPlayers 同步周围的人位置信息(包括自己)

MsgID:1

SyncPid

  • 同步玩家本次登录的ID(用来标识玩家), 玩家登陆之后,由Server端主动生成玩家ID发送给客户端

  • 发起者: Server

  • Pid: 玩家ID

message SyncPid{
    int32 Pid=1;
}

MsgID:2

Talk:

  • 同步玩家本次登录的ID(用来标识玩家), 玩家登陆之后,由Server端主动生成玩家ID发送给客户端

  • 发起者: Client

  • Content: 聊天信息

message Talk{
    string Content=1;
}

MsgID:3

MovePackege:

  • 移动的坐标数据

  • 发起者: Client

  • P: Position类型,地图的左边点

message Position{
    float X=1;
    float Y=2;
    float Z=3;
    float V=4;
}

MsgID:200

BroadCast:

  • 广播消息

  • 发起者: Server

  • Tp: 1 世界聊天, 2 坐标, 3 动作, 4 移动之后坐标信息更新

  • Pid: 玩家ID

message BroadCast{
    int32 Pid=1;
    int32 Tp=2;
    oneof Data {
        string Content=3;
        Position P=4;
        int32 ActionData=5;
    }
}

MsgID:201

SyncPid

  • 广播消息 掉线/aoi消失在视野

  • 发起者: Server

  • Pid: 玩家ID

message SyncPid{
    int32 Pid=1;
}

MsgID:202

  • 同步周围的人位置信息(包括自己)

  • 发起者: Server

  • ps: Player 集合,需要同步的玩家

message SyncPlayers{
    repeated Player ps=1;
}

message Player{
    int32 Pid=1;
    Position P=2;
}

results matching ""

    No results matching ""