原文作者:Jake Simpson
译者: 向海
Email: [email protected]
第7部份: 网络和连线游戏环境
网络游戏
我记得些年前坐在GDC(游戏开发者大会)听负责开发X-Wing Vs TIE Fighter家伙们题为“淹没在Internet” 演讲全是有关让网络游戏实时地在Internet上工作东西他们选择那个题目是多么正确啊当它开始处理数据包丢失乱序潜伏(个数据包发送到它目地所花时间)等等时它确实淹没了然而它是可能对于Internet需要些聪明和经验但它是肯定可能看看今天大量连线游戏从Quake IIIUnreal TournamentCounter Strike直到EverQuest和Ultima _disibledevent=>
请注意宽带并不总是能解决延迟问题你仍然受最慢路由器/服务器和数据包从服务器穿越网络到达你跳数(反的亦然)支配有个宽带连接确实容易缓和这些但不可能它们最后就消失了当然如果你打算要运行某种服务器你将会需要个具有足够快速向上游数据速率带宽仅仅个调制解调器不能够处理个服务器产生负荷
值得提是如果你想要在PS2或者Xbox上面玩网络游戏你将需要个宽带连接它们两者都不支持调制解调器
包大小智能数据传输和反作弊
别必须被处理事情是数据包大小如果你在个游戏里面64个人都在跑来跑去相互攻击从台机器发送到另外台机器数据包能变得相当大达到了些调制解调器没有带宽处理这些数据程度这正在变得特别和那些有着很大地表系统游戏有关这里增加问题是你有这个很好地表系统你能够看得很远因此能够看见许多其他游戏玩家使得你为了精确渲染所需要来自服务器数据数量以很快速率增长我们能做什么呢?
好吧首先必要是只发送绝对必须东西给任何给定客户端因此他仅仅得到从他角度观察游戏所需要东西发送在他视野以外人们数据没有点意义—他将看不见这些同时你最好确保只发送那些每幀的间实际上发生改变数据如果个家伙仍然在播放相同动画重新发送数据没有意义当然如果数据包丢失时这确实带来些问题但这就是为什么好网络员被支付很多金钱来处理类似这样东西
还有些其他事情也要处理最近已经有大量令人苦恼连线作弊正在发生这是某些人修改游戏以给他们不正当利益地方尽管严格意义上这不是网络部分但它确实发生了有时人们会创作些模块允许他们立即瞄准进入视野任何人或者简单地允许他们看穿墙壁或者让其他游戏玩家看不见他们自己大部份时间这些事情可以在网络层内部或者在服务器上被处理任何有100%命中率人被简单地踢出游戏在人力所及范围内那是不可能
游戏开发者必须尽切可能制止作弊行为但很不幸人做东西可以被人突破所有你能做就是让作弊变得困难当确实发生时去尝试发现它
好吧现在就到这里了在第8部分中我们将会看看游戏脚本系统趣味世界根据游戏过程中出现事件来渲染或使能预先定义场景和行为协助故事叙述
最新评论