游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2524|回复: 3

最近开发游戏服务器一堆问题

[复制链接]

18

主题

66

帖子

66

积分

注册会员

Rank: 2

积分
66
发表于 2009-1-23 22:02:00 | 显示全部楼层 |阅读模式
3d 大型多人游戏
1:客户端和服务器之间每秒处理多少KB的数据包可以保持比较高的效率?
2:一个包最好保持在多少字节效率比较高?
3:看了很多帖子有说TCP协议做游戏好,有说UDP协议好? 还有人提出2种一起用, 例如:移动包, 聊天包用UDP, 登陆,跳转,状态改变用TCP?
4:如果用TCP, 服务器需要从头到尾一直保持连接?
5: 例如, 玩家鼠标移动到某个位置, 我有如下2种实现方案:
     1:该玩家发出命令后客户端已经开始向目的地移动了,是客户端每多少毫秒向服务器发送数据更新服务器上的坐标然后再更新其他周围玩家客户端上自己的表现。
     2:该玩家发出命令后客户端已经开始向目的地移动了并且向服务器发送一个目的地地址的包, 服务器上进行单独移动运算(与客户端算法一致), 并且每*时间段更新所有周围角色客户端上自己的角色表现,而且也发送给该玩家客户端,该玩家客户端上对移动进行一些修正,服务器上到达目的地后给所有客户端发送一个停止包, 所有客户端进行修正(避免客户端产生跳帧现象)
    大家觉得哪种好?或者还有哪些不足的? 上面都提到每隔*时间发送更新包, 那么这个*时间段频率多少?0.3毫秒如何?这个数据还需要经验认识来说说 呵呵


对这块不是很了解, 希望大家给点帮助 谢谢!

提前祝大家新年好! [em3]

7

主题

392

帖子

392

积分

中级会员

Rank: 3Rank: 3

积分
392
发表于 2009-1-27 18:33:00 | 显示全部楼层

Re:最近开发游戏服务器一堆问题

前两个不清楚,但有多少信息就应该发多少数据量,能少发一点应该是好事,包本身应该越大越好,但各个协议应该都有上限的,具体你可以去查一下
第三个应该还是看需要了,不过TCP考虑起来容易点。
第四个,连接起来一般就不断了,而且游戏数据包断的可能性应该也不大,不需要为了那小小的可能性而断掉链接
第五个,第二种做法好,第一种带宽占的多,而且安全性不好。
时间段频率我感觉应该和游戏节奏有关,或则你根据移动距离发数据包感觉如何?
我也刚做游戏,而且开发的不是角色扮演类,有些东西考虑情况和你不一样,你参考一下就可以

12

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
发表于 2009-1-31 16:16:00 | 显示全部楼层

Re:最近开发游戏服务器一堆问题

1:客户端和服务器之间每秒处理多少KB的数据包可以保持比较高的效率?
好像是8K内

2:一个包最好保持在多少字节效率比较高?
比较大的包在网络上会被分解成小的包, 然后组合起来, 所以一定大小的包效率比较高, 多大不太清楚

3:看了很多帖子有说TCP协议做游戏好,有说UDP协议好? 还有人提出2种一起用, 例如:移动包, 聊天包用UDP, 登陆,跳转,状态改变用TCP?
以前我一直认为UDP不能做游戏 容易丢包,  但bigworld采用udp而且国内越来越多的游戏用bigworld, 现在我也模糊了,  udp如果丢包bigworld游戏该怎么办?如果引擎去保证丢包问题 那么还不如用TCP, 我也觉得可能TCP/UDP混合使用。

4:如果用TCP, 服务器需要从头到尾一直保持连接?
一直链接

5: 例如, 玩家鼠标移动到某个位置, 我有如下2种实现方案:
可能是2吧

18

主题

66

帖子

66

积分

注册会员

Rank: 2

积分
66
 楼主| 发表于 2009-2-2 12:50:00 | 显示全部楼层

Re:最近开发游戏服务器一堆问题

楼上说的有点道理啊!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-20 10:19

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表