若是按照刘可韦的说法,正规的游戏研发公司均设有专门的qa部(品质保障,quality_assurance),由qa们来负责游戏的测试工作。
qa部直属于项目经理之下,与策划、程序、美术三大游戏研发部门并列。
出于成本因素的考虑,像圣杯工作室这样新成立的游戏研发团队,往往不会设立专门的qa部,而是由游戏策划兼任游戏的测试工作。
反正策划们薪水低廉,人力充裕,实在忙不过来的话,多招点执行策划不就好了?
现在的问题就出在这些没有经过专业培训就匆忙上马的执行策划身上。
很难得地,策划部现有十位成员全体出现在会议室里。许主策默默地端着他那造型酷炫的金属水杯坐着,眼神里透出凌冽的寒意,令每一位与他对视的执行策划们情不自禁地深深垂下头去。
主持这次策划会议的是他身边新上任的副主策凌星宁,作为第一时间发现并打算提交bug(因为执行策划擅自重启机器而失败)的当事人,许主策顺水推舟地将会议主导权交给他,顺便也借着这个机会竖立他在策划部里的威信。
凌星宁提出的第一个问题是,这个bug是什么时候开始出现的?
这个问题很关键,因为测试服务器并不是从开始架设以来到现在为止都是一成不变的,每隔一段时间,程序部便会将新完成的功能代码打包上传到测试服务器,俗称为“打版本”,这个周期短则一两日(俗称小版本),长则一周(俗称大版本)。如果能弄清出现bug的具体时间,便可以顺藤摸瓜推测出产生bug的程序代码大致属于哪个版本,进而再找出具体是哪个功能的代码出现了问题,为程序解决bug提供极大的便利。
根据执行策划们的回忆,类似的bug最早一次出现大约是两周之前。
段杉杉面色复杂地看了看身边的曹恭,再看看对面的许主程,最后丢给刘可韦一个心照不宣的眼神。两周之前不就是正好是苏菲离开圣杯工作室,许主策开始对他们的工作横挑鼻子竖挑眼,将测试工作全部转交给执行策划们的时候吗?
虽然看到了段杉杉的小动作,刘可韦此时却无心作出任何回应,他的脑子里正翻江倒海地思索着事发前的那几个游戏版本究竟增加了哪些新功能,可惜因为时间实在有点久远,已经间隔了大大小小七八个版本的更新,一时间也难以理出什么头绪。
凌星宁提出的第二个问题是,为什么没有按照规定的工作流程,第一时间提交bug?
执行策划们瞠目结舌无言以对,毕竟他们都是一些刚走出大学校门的社会新人,又没有经过统一规范的岗前培训,职业敏感度和负责心态都还没有真正竖立起来,加上又分散在四个不同的工作组里面,虽然各自的上司也曾对测试工作一些常规的注意事项进行了或长或短的耳提面命,可是这些早就听腻了老师和父母的谆谆教诲的大孩子们又有几个会记得领导所说的每一句话?
“这样看起来不行啊,”一直沉默不语的许主策终于悠悠地开口了,“还是需要有一个专门的人来带他们,以后执行策划就交给星宁来统一负责引导监督了,这方面星宁你要多费点心。”
轻飘飘的一句话,便将曹恭和段杉杉打成了光杆组长,刘可韦也只剩下佘近山这么一位手下。凌星宁忍不住露出了牙疼似的苦涩表情,抬头看看对面,曹恭人畜无害地笑得很温驯,刘可韦紧锁双眉兀自沉浸在思索里完全没有拔出来的迹象,段杉杉则是一脸无所谓表情地埋头看着他的记事本。
“好吧,我会努力帮助他们尽快适应测试工作。”凌星宁无奈地答应了下来。先是被任命为副主策,然后指派去负责系统和关卡两个组,现在又接手策划部里所有的执行策划,把我抬得这样高真的好吗?我又不是不知道“枪打出头鸟”的道理!
看来在这家新加入的公司里,自己很难交到同部门的朋友了啊!凌星宁收拾了一下散发的思绪,提出了第三个问题:还有没有类似偶发“下坠”这样的类似bug,曾经出现过但是没有引起执行策划们的注意而被忽略过去了。
“什么叫做bug?”一个执行策划鼓起勇气问道,要命的是另外三个人竟然也流露出一副茫然而好奇的眼神。
“你们可以简单的暂时理解为,一切与你们操作过程的预期结果不符合的游戏反应。比如说你控制角色往左走,只要游戏里的角色实际上并没有即时往左走,就都算是bug,包括向别的方向行走、没有反应或者反应延时。”凌星宁选择了一个比较好理解的诠释方式。
四个执行策划们似懂非懂地点点头,然后集体陷入了冥思苦想,接着你一言我一语地提出了二十来条他们认为“疑似”bug的情况,经过许主策、凌星宁、刘可韦和曹恭四人的甄别,确定为bug的一共有大大小小八处,其中包括了偶发“下坠”那一条。
凌星宁将自己归纳记录在本子上的八处bug交给许主策过目,算是完成了自己主持的这一次策划会议。
接过了会议主持权的许主策一边盯着凌星宁的记录本,一边小口抿着自己的狮峰龙井,考虑了几分钟之后,终于做出了决定。
“会议结束之后,所有人先暂停各自手里的工作,全力投入到这八处bug的重现测试里。一旦成功重现,立即按照规定流程截图并附带详细说明提交给程序部的黎总监,然后保留bug现场等程序的人过来确认,这件工作由凌星宁负责。”
得,肩膀上的担子又重了几分,凌星宁默默地叹了口气。
回到策划部,凌星宁首先将记录本上的八条bug描述发到rtx的策划群里,然后便与众人一起投入到重现这八条bug的测试工作中去。
对测试工作并不陌生的凌星宁、曹恭和刘可韦分别成功地重现并提交了两条、两条和三条bug,黎总监亲自对这七条bug进行了确认,并给程序部各自对应功能负责人提出了解决相关bug的排期时间。
只有那条偶发“下坠”的bug,像是根本就不曾存在过一样,策划部花了一整天时间,怎么都测不出来。
无奈之下,凌星宁拉着刘可韦和曹恭,跑去找黎总监对这个曾经出现但是没有及时提交也没有重现的bug进行了相关的描述。
“偶发bug?”黎总监一听到这个词眉头就立刻皱了起来,“你们也知道光靠说没有用,不是我不相信你们,而是如果不能重现的话,我这边就算明知道有问题也没法查验,处理bug的常规手段是在出错的时候中断游戏,然后逐行去验证当前执行的代码,你们都懂的。”
果然不出所料,三人大失所望地彼此交换了个眼色,他们也知道黎总监应该不是在推诿,正常情况下解决bug的前提就是可以重现、保留现场,单凭口头描述让程序去数以百万字节的游戏代码中去查验问题那是不可能的事情。
“等一等。”刘可韦忽然想起了什么,抛下讨论中的另外三人,头也不回地跑回了策划部。
黎总监和凌星宁、曹恭三人大眼瞪小眼地愣住了,完全闹不明白刘可韦葫芦里面卖的是什么药。
过了几分钟,刘可韦匆匆地跑了回来。
“我查了一下你们程序那边给过来的更新记录,把最有可能导致代码错误的三个版本的更新功能日志rtx上发给黎总监您了,您看看能不能推断一下是哪部分的代码出了问题。”刘可韦一边喘气一边说道。
这倒是一个没有办法的办法,凌星宁颇感意外地打量着这个年纪轻轻的关卡组长。能够在没有任何头绪的情况下做到这一步,也算是难能可贵了。看起来圣杯工作室的策划部实力很强啊,至少这个刘可韦处理问题的经验和思路都是业内一流的水准。
黎总监“哦”了一声,回到自己的写字桌上,打开rtx的消息框逐仔细地看着,他座位边的车光龙也全程听见了之前的谈话,此刻也忍不住凑过头来瞧着。
快速地逐行扫过刘可韦发过来的三段更新功能日志,黎总监看到其中某一行的时候,心跳忍不住加快了,脸上的表情也略有变化。
那是他所负责的游戏引擎的其中一个新开放功能,引擎的开发进展一直不太顺利,进度一而再再而三地延时,可是这一块工作对于程序部的主管来说意义重大,他始终将游戏引擎的相关代码牢牢控制在自己手里,从来不曾对程序部的其他人公开过。
简单的说,只要拥有自己研发出的游戏引擎,可以高价将其授权给别的游戏研发团队使用,也可以围绕着该引擎建立属于自己的游戏研发团队。因为这通常就是一款游戏最有价值、也最为关键的心脏,简直就是一只会下金蛋的鹅。
如果因为bug的问题导致被迫向其他程序员们公开自己开发的游戏引擎,和打开自己的钱包让别人随意享用没什么区别。
强压下心里的不安,黎总监竭力装出若无其事的表情说道:“单纯从这些更新功能日志里面看不出问题可能出在哪儿。”
三位策划一脸失望的表情,然而听明白了前因后果的车光龙却囧着他的八字眉锁定了屏幕上某一行文字,正是引发黎总监不安的游戏引擎新功能。
“d坐标轴(xyz)的z轴开放。”
老天保佑终于在1点前赶出了这一章,没有食言,文字若有疏漏之处还请诸位读者多包涵,我会稍后修订润色的。