- 1
- 0
- 约 5页
- 2017-06-11 发布于北京
- 举报
网络游戏中服务器端与客户端分别处理哪些事情
用具体事例来说,举个例子:聊天。一个游戏如此设定,一个玩家当使用“当前频道”时,只能让周围50米的玩家收到。
于是。玩家A输入了一堆话,这个时候客户端接收,并立即发送到服务器端。
服务器端固定周期处理一次所有聊天信息,比如200毫秒,客户端送到时候,正好上一个200毫秒过去了,于是排在下一个200毫秒的队列里。
这个时候任何客户端是没办法看到聊天信息的,包括A端(假定是这么设定的,这个就是有的时候你网络卡的时候,明明按了回车,对话框却不冒出来任何聊天信息的原因)。
时间在流逝,服务器开始跑队列,并跑到这个地方了,于是它开始运算,第一是判断这句聊天对话是当前频道,世界频道还是其他,判定结果是当前,于是执行当前频道的处理:读取这个玩家所在位置,搜索这个位置方圆50米的其他玩家,向这些玩家 包括A端广播聊天信息(假如还有黑名单功能,还要剔除黑名单玩家;假如付费用户字体还有特殊颜色,还有传播这个对话的风格)。
所有客户端收到信息,然后在聊天频道里播放这条信息。于是大家都看到了。
具体来说,理想上的网游(当然还包括股票交易是这种类型),个人倾向于所有逻辑处理全放服务器端,而客户端就像个媒体播放器。
这是因为如同某本书讲得,客户端是掌握在对手中,如果让你服务器只起到数据交换作用,那么外挂就可以彻底糟蹋你的游戏。
在理想基础上,客户端做的事就是表演,根
原创力文档

文档评论(0)