8.13.2014

寻找基于网络的漏洞

作者 Joe Graf

最近,我和战争机器的粉丝进行了邮件交流,我们谈到了该系列三部作品间网络质量方面的区别。在关于提高网络体验的质量方面,我们谈到了使用虚幻引擎的内置网络模拟功能。使用了这些功能后,我们可以在不同的网络质量条件下,测试合作模式和多人对战模式。目标是确保游戏在网络条件不佳的情况下可以尽可能提供良好的游戏体验,并在发售前可以在QA实验室中寻找网络相关的漏洞情况,而不是在社区发现这些问题后才做出应对。

以下是我们在引擎中可用的设置:

Setting

Description

 PktLag

 延迟一段时间再发送包,时间以毫秒为单位

 PktLagVariance 

 给包延迟的时间提供一些随机性, +/- 时间长度,以毫秒为单位  

 PktLoss

 定义丢弃传出包的百分比以模拟丢包

 PktDup

 定义发送重复包的百分比

 PktOrder

 在启用时乱序发送包(1 = 启用, 0 = 禁用)

有三种方法来配置这些设置:命令行参数、游戏中控制台的可执行程序、以及通过引擎INI文件。在命令行中,使用如下方法来指定设置:

<SettingName>=<Value>

在控制台中,使用:

Net <SettingName>=<Value>

如需通过您的DefaultEngine.ini文件来设置,添加以下部分到您的INI并修改值为您想要测试的值:

[PacketSimulationSettings]

PktLag=0

PktLagVariance=0

PktLoss=0

PktOrder=0

PktDup=0

在开发战争机器3时,我们在每天的版本中都进行模拟设置,这样每个基于局域网的游戏测试都具有真实世界的网络情况。我们同时在合作模式和对战模式中让程序员使用极端设置(500左右的双向ping,10+%的丢包等等)来做游戏测试。这些测试目的不是享受游戏,而是查找bug和网络漏洞,它们仅仅会在最严苛的情况下才会出现。即使您认为这些情况在正常情况下不会产生,我们也认为最好能进行测试,以防止作弊者使用网络篡改来执行漏洞。

您的社区将会为您寻找并共享任何网络漏洞,但对这些问题最好是能事先预防而不是出了问题再响应。您的公共关系和社区管理团队会为此而感谢您的。

祝您在寻找漏洞的旅途上愉快!

最近文章

虚幻引擎中文教学福利:使用 C++ 开发多人游戏

Udemy 课程《虚幻引擎 4 大师:使用 C++ 开发多人游戏》由 Epic Games 中国提供官方中文字幕。本课程经过 Epic Games 认...

Drive Studio利用虚幻技术帮助FOX Sports的2018世界杯足球赛转播大放异彩

Drive Studio利用虚幻引擎功能设计的环境、插播广告和信息图形为FOX Sports的2018世界杯足球赛报道增光添彩。

在Daedalic的《State of Mind》中探索独特的剧情和玩法思路

我们找到了这个游戏的创作者,从而深入了解这款利用虚幻引擎4诠释超人类主义主题的叙事型游戏。