『哒哒哒……』
『哒哒哒……』
屏幕上,那个极度简洁化的定位测试em中,准星不断在几个随机刷新出的目标上闪转腾挪,将它们悉数消灭。
准确率其实不算特别高。
但……
屏幕前的山姆手握着手柄,几乎是完全下意识地控制着。
整个流畅已经完全被刻入了本能反应之中,仅凭直觉就能完美操作。
这是纯手柄的射击交互。
「惊人的手感……」
一轮结束,山姆长出了一口气,看着屏幕上超80%的准确率。
对於一位头一次使用手柄进行fps的玩家来说,这个成绩已经是天赋异禀了。
不过山姆很清楚,这个成绩里恐怕有很大的水分。因为他在操作的时候,能够感觉到明显的吸附感,和某些他说不上来,但起到了重要作用的微调。
就好像是自己此刻正身处在靶场之中,有一位贴心的教练扶着他的手,手把手地教他该如何瞄准似的。
「这是怎麽做到的?」
山姆扭过头来,看着一旁还在检查软体输出的数据的林立新。
这个em不是纯给他测试手感来的。
同样的,林立新也需要根据练枪软体的输出结果来得到更细致的数据,以进一步打磨它。
这种东西没有办法靠金手指直接搞定,完全是经验主义的玩意儿,只能靠大量的数据去堆才行。
「简单来说就是自动瞄准,每个敌人身上都有一个『磁铁』,会吸引你的准星,在算法的决策下,你就能迅速在多个目标之间进行快速瞄准。」
林立新一边将数据记录在文档里,一边给他解释道,
「不过实机效果可能不会有现在这麽好,因为单位之间的关系更加复杂了,也不一定能够一梭子就击杀,玩家的决策会更复杂。所以接下来第二项测试里每个小球的血量会被增加到10。」
em测试的好处是显而易见的。
快速叠代,任何需求都能迅速落实,可以及时调整需要的项目。但缺点也很明确,太理想化了,也太实验室化了。
玩家真正游玩的时候,情况往往会变得很混乱。
就像那个经典的测试工程师酒吧笑话一样。
设计师是不可能真正覆盖到所有玩家的所有想法的,总会有出乎预料的情况出现。
如果能让玩家觉得这种意外很有趣,那它就是成功的『特性』,甚至被玩家觉得『你都算到这一步了?!』。
反之,则会大大破坏游戏的体验。
就像你阿育哥哥的b信条那堪称邪典恐怖电影的表现。
测试工程师要明白,玩家来酒吧,不一定会点酒水,他有可能会点一份炒饭,然後跳到桌子上拉屎,再给酒保做一份锟斤拷锟斤拷烫烫烫烫烫。
「嘶……说起这个……」
林立新忽然想起了一件事。
谁说amenva没有玩家的实机数据了?
「塞尼,之前《雷神之锤2》的信息采集库呢?」数据,永远都是最宝贵的东西。
对amenva来说,这些早早布局下的东西,此刻便是一个超大号的经验包。
甚至可以说是金库。
早在《雷神之锤2》时期,林立新和塞尼便尝试着为它内置了一套没什麽存在感的系统。
信息采集。
只要玩家勾选首次启动时弹出的协议,游戏就会默认启动捕捉功能。
它会记录玩家在游戏中的各种状态。
包括换弹时机、命中率、平均消灭时间,机动情况,某个机关消耗的时间等各种游戏内详细数据。
这些数据或许一两条不会有什麽作用。
但如今《雷神之锤2》早就已经是民间最为昌盛的fps游戏。
海量的玩家每天都在源源不断地贡献成吨的数据。
更要命的是这是一款大幅提升了联机对战体验的作品。玩家在游玩时本就倾向於联网。
这些数据自然都会按照协议的要求上传至amenva数据中心。
以前,这玩意儿派不上什麽大用场,只能说是花钱养着资料库,以备不时之需。
而现在就是那个传说中的『不时之需』了。
与其让测试团队搁这儿低效地反覆测试,直接拿这些现成的数据过来,能节约不少的时间。
林立新来到工作站跟前,快速写了个热力图算法。
将这些数据样本处理成热度图,就能一眼分辨得出他需要的东西。
「死区、加速度、瞄准辅助强度、目标吸附……」
这些东西都能迅速套用到现在的模型上。
不过他们当然也不能就这麽直接无脑全信。
这些数据存在着不少问题。
首先最关键的一点便是《雷神之锤2》是个典型的键鼠操作的fps游戏。键鼠的很多数据对手柄来说其实是不同的,这一点必须慎重对待。
再有就是样本群体的区别了,《雷神之锤2》存在着一定的上手难度。
尤其是对於竞技场模式来说。
能玩到现在还沉浸其中的,至少也已经是fps大手子了。
这些人的经验不见得对新人就同样有效。
高手喜欢更高的灵敏度、更小的死区,更少的镜头减速,这样才能让他们有足够快的反应速度。
但对新手来说,如果这样处理,一定会让镜头转得快到飞起,甚至直接触发强烈的3眩晕症。
只能说……
「测试这条路,任重而道远啊……」
林立新无奈地叹了口气。
往好处想,起码现在他们能够理论和实践并行了。
「塞尼,我想我们日後可能需要组建一支更加专业的行为实验室。」「嗯……以後网路游戏越来越多,游戏节奏越来越快,能够提早组建专业的团队,对咱们来说肯定是有利无害的。」
塞尼颇为认可地点了点头。
别看他是团队的架构师,但他可是正儿八经的全栈。
不管是游戏开发还是硬体亦或是各种乱七八糟的业务,他都算是一门灵。
正儿八经的一位站在一线的技官。
两人几乎没有任何讨论就在这件事上达成了一致。
「网络建设也是个问题呐……等到《alf-life》搞定,说不定咱们可以借题发挥一下,以新引擎为蓝本做一个对战游戏。」
林立新的脑海中几乎瞬间便闪过了那个名字。
《雷神之锤》的竞技场非常不错。
但fps对战的形式多种多样。
最终经过市场验证笑到了最後的,还真就是那一位大人。
「网页游戏也得跟上,正好现在动视他们都近了,总算是不用我加州往返跑了。」「说起来,之前《猴子塔防》的时候我就在想了,那个流式数据加载能不能……」
「林!」
卡马克的声音打断了林立新和塞尼两人的交谈。
林立新回头望了一眼。
「怎麽?」
「引擎测试的时候,碰到了一个有意思的小问题,我想你一定会感兴趣的。」
「哦吼?」
林立新眉毛一挑,示意塞尼先替他跟山姆继续做着测试,便转身跟上卡马克。
……
一路上,卡马克便叽里咕噜地把大致的情况跟他说了一下。
「我们在起源引擎里塞了个完整的物理引擎,like……真正意义上的物理,刚体物理、布娃娃效果该有的都有,所以我们拿了以前qake里用的房间场景用来测试。」
「所以是出了什麽问题?」「我们把npc摆的离门太近了,门在打开时撞到了npc的脚,会被直接卡住。」
「这算什麽问题?这不是很好吗?这说明咱们的新引擎在物理上表现优异。」
「不不不,最神奇的就在这儿了。门的物理并不是这次新增的,事实上在qake时期我们就尝试为它做了刚体物理。」
「?」
林立新微微一愣,
「或许是新模块的侵入性太强,影响了原本的计算?」
「不,我检查过了,从耦合性来看,这部分代码的确完全没有动过。更有意思的是,我把代码回滚到了qake2引擎的原始版本,这个门仍然打不开。」
虽然是在交代一个挺严重的b,但卡马克脸上反倒是看不到什麽负面的情绪,相反,他高兴得不得了。
就像是一个发现了新大陆的航海家那样,正在兴奋地跟船长汇报着战果。
「那这个场景本身就布置有问题吧?qake2引擎咱们测试的时候可是没什麽问题的。」
「不要着急嘛,最好玩的点就在这里了,我把代码移植回了nx上,你知道的,咱们架构是互通的,移植几乎不需要动什麽东西。然後……你猜怎麽着?」
卡马克今天格外的兴奋,居然都学会了卖关子。「怎麽?」
「门还是打不开。」
「……」
林立新一时间有些无语。
这不是更证明了整个测试房间一开始就存在问题吗?
「但!」
不等林立新开口,卡马克再度出声,话锋一转,脸上露出一个神秘莫测的表情,
「这个门在qake2时期……是能打开的。」
「?」
「我们检查过了,即便是用当初qake2的原本,这扇门也仍然无法正常打开。但在当初开发的时候,一切都是正常的。我敢保证,我们有多份当初留档的内部测试报告可以佐证这一点。」
一个被拷贝出来的新文件,改了里面一点东西,居然会影响一个从未动过的,备份在伺服器里的游戏源码?
这怎麽可能?