游戏同步数据结构
2017-03-14 15:58:29 0 举报
游戏同步数据结构是一种用于在游戏中实现多个玩家之间数据实时同步的高级数据结构。它的主要目标是确保所有玩家看到的游戏状态是一致的,无论他们何时加入或离开游戏。这种数据结构通常包括一个主服务器,负责处理所有的游戏逻辑和状态更新,以及一个或多个客户端,负责显示游戏画面并接收用户的输入。当主服务器更新游戏状态时,它会将这些更改广播到所有的客户端,使它们能够同步自己的状态。此外,游戏同步数据结构还需要处理各种复杂的问题,如网络延迟、数据冲突和错误恢复等。
作者其他创作
大纲/内容
实时任务 Task
- id: String- type: Enum- status: Enum // 未开始/进行中/结束- radius: Double // 任务半径- beginTime: Int64- endTime: Int64- position: Vector3- teamId: String // 队伍- subAccidentId: String // 子事故
实时玩家列表
- list: List
- 按需同步
实时任务列表
实时事故 Accident
- id: String- type: Enum- status: Enum // 未开始/进行中/结束- beginTime: Int64- endTime: Int64- position: Vector3- gameObjectId: String // 事故物体?- subAccidents: List
实时事故列表
1:N
新增聊天记录
chat: Sring // 聊天记录
实时游戏对象列表
- 按时同步
1:N
实时玩家 Player
- id: String- name: String // 用户名- teamId: String- gameObjectId: String // 玩家
事故通知
notification: String // 事故通知
杂项 Misc
- 演练已进行时长: Int64- 演练剩余时长: Int64- masterId: String // 主机标识- isOver: Boolean // 演练是否结束
实时游戏对象 GameObject
- id: String- name: String- category: Enum // 场景内置/Master管理/其他- type: Int32- status: Int32- HP: Int32- position: Vector3- rotation: Vector3- visible: Boolean- userData: JSON // 用户数据- gameObjects: List // 相关游戏对象
聊天
playerId: String // 发送者targetId: String // 接收者chat: String // 聊天内容
子事故 SubAccident
- id: String- type: Enum- accidentId: String- taskId: String- level: Enum // 高/中/低- HP: Int32- radius: Double // 子事故半径- beginTime: Int64- endTime: Int64- gameObjectId: String // 子事故物体
0 条评论
下一页