第 13 章

伤筋动骨

P0级修改清单被投影到会议室墙上的时候,是测试关闭后的第三天上午。文档的创建时间是当天凌晨两点十七分,最后编辑者是沈明远。标题下面第一行用红色高亮标注着修改期限与验收标准,措辞没有任何商量的余地。

但真正让整间会议室安静下来的不是这句话,而是清单第一条——重构新手村前30分钟任务链,强制插入一次完整的战斗教学与一次轻功演示。这条条目下面附着一组数据:测试期间进入游戏的玩家共计一千二百四十人,其中在清河镇场景停留超过十五分钟的玩家占比百分之八十七,但完成第二章主线任务的玩家占比只有百分之三十五。

换句话说,超过一半的测试者在尚未接触到游戏真正差异化的内容之前就已经退出了。录屏分析进一步显示,大量玩家在开场四十分钟内反复进行同一类操作:在村子里走动、与NPC对话、触发过场动画。他们看到了清河镇的青石板路和沿街叫卖的货郎,看到了宋画滤镜下层层晕染的远山与竹林,却始终没有机会真正拔出随身携带的那柄刀,更不用说体验一次完整的、直来直去的对决。

正如工作室负责人Beralt Lyu后来所阐释的,他们所追求的江湖体验,核心在于重现那种「腥风血雨」的肃杀感——这恰恰是传统武侠江湖最具代表性的核心缩影,但在当前的新手流程里,这种感觉被完全窒息了。沈明远没有站在投影前讲解。

他坐在长桌靠窗的一侧,手里转着一支没盖笔帽的签字笔,让数据本身滚动在墙上。战斗系统负责人赵铮坐在他对面,面前摊着一台笔记本电脑,屏幕上正在循环播放两段并排的录屏——左侧是测试期间某位玩家的操作记录,右侧是从网上下载的《只狼》某场精英怪战斗的录像。两段画面被同步到了一个相同的节点:角色起手挥刀的第一帧。

在《只狼》的录像里,从按下攻击键到刀刃挥出判定生效,间隔是六帧。在《燕云十六声》的测试版本里,同样的操作需要九帧。三帧的差距,在六十帧每秒的刷新率下是零点零五秒。赵铮在过去四十八小时里已经把这两段录像反复看了不下两百遍,每一遍都在逐帧标记动作的起承转合。

他得出的结论写在了P0清单的第三条:战斗系统起手帧响应延迟须压缩至六帧以内,所有武器类型的普攻连段须在两周内完成第一轮手感调校。赵铮在会议开始后的第一次发言只有一句:九帧到六帧不是调参数能解决的。他没有抬头,目光仍然盯着屏幕上那两段同步播放的画面。

左侧的玩家角色挥刀时,动作前摇阶段有一个微小的沉肩动作,这个动作在历史考据上是准确的——宋代刀法确有“沉肩坠肘”的起手式,这是顾知远在半年前的动作评审会上坚持要求加入的细节。但就是这个细节,在测试版本中拖长了从按下按键到判定生效的时间窗口。

顾知远没有参加这次会议。他的角色在测试数据出炉之后变得微妙起来——没有人质疑他在历史考据上的专业度,但当留存率数据摆在桌面上的时候,“准确”和“可玩”之间的权重不得不被重新评估。赵铮在P0清单的备注栏里写下了关于历史准确性与核心战斗手感之间需要协商调整的意见,这行备注在会前已经发给了顾知远,对方尚未回复。

叙事设计师陆辰坐在长桌的另一端,面前放着一沓打印出来的任务流程图。那些图纸上画满了箭头和分支节点,每一页都代表新手村前两个小时的主线任务链。

在测试版本中,这条任务链被设计成一种碎片化叙事引导——玩家进入清河镇后,不会立刻接到明确的主线任务,而是通过环境中的NPC对话、告示栏上的文字和散落在场景中的信件,逐步拼凑出自己需要前往的方向。这个设计是陆辰在过去一年里反复打磨的核心叙事理念,也是他在立项阶段向沈明远承诺的、区别于传统MMO的任务体验。

但测试数据给了这个理念一记重击。录屏显示,大量玩家在进入清河镇后的前十五分钟内处于明显的迷茫状态。他们在村子里四处走动,与随机NPC对话,但对话内容没有形成有效的引导链条。一位测试者在退出游戏前最后的操作记录是:连续点击了三位不同NPC的对话选项,然后站在村口的水井旁边停留了四十秒,随后关闭了客户端。

沈明远在那天上午的会议上直接点了陆辰的名。他指出,碎片化叙事的核心前提是玩家有足够的耐心去拼图,但测试数据表明,大部分人在拼出第一块碎片之前就已经离开了。陆辰没有反驳。

他在测试关闭后的第一天晚上就已经拿到了完整的录屏数据,花了整整一个通宵看完了所有测试者在开场两小时内的操作记录。凌晨四点的时候,他在自己的工位上重新打开了一份空白文档,开始拆解那条他花了一年时间搭建的任务链。

P0清单的第二条就是他的工作成果:重构新手村前30分钟任务链,强制插入一次完整的战斗教学与一次轻功演示,确保玩家在进入自由探索阶段前已掌握基础操作。“强制插入”这四个字是陆辰自己加上去的。他在会上的解释很简短:碎片化叙事可以保留在后续章节,但前半小时必须用线性引导把玩家固定在关键路径上。

这句话从他嘴里说出来的时候,会议室里没有人接话。大家都知道这意味着什么——这意味着那条被陆辰视为叙事核心的环境叙事引导理念,在游戏最关键的留存窗口期被自己亲手否决了。投影上的P0清单继续向下滚动。

第四条涉及开放世界探索节奏的调整,第五条要求重构第二章主线任务的引导密度,第六条标记了多武器切换系统的教学缺失——测试期间只有不到百分之十的玩家在游戏过程中主动切换过第二把武器,而多武器武学流派切换恰恰是《燕云十六声》在立项阶段向网易管理层承诺的核心差异化卖点之一。

沈明远在第六条上停了停,用笔尖敲了敲桌面。他说,如果这个数据被陈言看到,项目组连季度复审的机会都没有。陈言是网易互娱事业群的技术副总裁,也是半年前立项评审会上对《燕云十六声》投下关键赞成票的人。在那次评审会上,沈明远用“单人版本绑定季度复审”的条件换来了项目的转正资格,而多武器武学系统正是他向陈言展示的不可替代的差异化竞争力的核心组成部分。如果这个系统在测试中被证明玩家根本不会主动使用,那么季度复审时他将没有任何筹码可以摆上台面。

赵铮在这个时候合上了笔记本电脑的屏幕。他站起来走到投影前,用手指点了点第六条旁边的一行备注。

备注的内容是建议在主线任务第二章第三节点强制触发武器切换教学,并在该节点配置一场必须使用第二武器类型才能通过的精英战。赵铮的语速不快,每个字都像是经过权衡之后才放出来的。

他指出这意味着需要在第二章增加一整场新的战斗——新的敌人类型、新的战斗脚本、新的技能特效、新的平衡参数。四周之内,这些东西从零开始做,只能保证功能跑通,不能保证手感打磨到上线标准。沈明远说,手感标准可以放宽到及格线。赵铮问他及格线是什么标准。沈明远的回答很直接:玩家不会因为这场战斗而卸载游戏。赵铮沉默了几秒,然后点了点头。

这个标准听起来很低,但在场所有人都明白,对于一个正在抢救留存率的项目来说,“不导致卸载”已经是相当奢侈的底线了。录屏数据显示,测试期间有相当一部分玩家正是在遇到第一场具有一定难度的战斗后选择了退出——不是因为打不过,而是因为打起来不舒服。

那种不舒服的根源,又绕回了赵铮正在逐帧调校的起手帧延迟问题。P0清单在墙上滚动了整整四十分钟。

每一条被点开的时候,都附带着测试数据、录屏截图和修改建议。沈明远没有主持会议,他把控节奏的方式很简单:每一条过完之后,他会看向该条目的主要负责人,等对方给出一个明确的承诺时间节点。

赵铮承诺两周内完成全武器类型的起手帧调校。陆辰承诺一周内交付重构后的新手村任务链脚本。负责开放世界探索节奏的策划组长承诺三天内拿出新的POI密度分布方案。承诺一个接一个地落在会议记录里,像钉子钉进木板。

但真正棘手的问题出现在清单第十一条。那条条目的措辞很简短:评估“宋画笔触”渲染管线在全平台的性能预算占用,优先保障移动端帧率稳定在30帧以上。这条条目的负责人是技术美术沈明远——和制作人同名同姓的另一位沈明远,团队内部习惯称他为“大沈”,以示区分。

大沈在会议上没有立刻给出承诺。他只是说,需要和林铮再跑一轮全平台压力测试。林铮是引擎组的主管,也是半年前在“引擎里的沙盘”那场技术谈判中,与Messiah引擎中台反复拉锯的关键人物。

在那次谈判中,林铮争取到了在渲染管线和地形系统上进行实验性修改的权限,但中台给出的条件是:任何实验性修改不得影响移动端的基础性能指标。这个条件在当时看来是一个技术上的紧箍咒,但在测试数据出炉之后,它变成了一个悬在项目组头顶的实际威胁。

测试期间的性能数据显示,在搭载高通骁龙865芯片的移动设备上,《燕云十六声》在清河镇场景的平均帧率为28帧,在战斗场景中会进一步下降到24帧。这个数据远低于网易内部对移动端游戏的最低性能标准——30帧是底线,35帧是及格线。而“宋画笔触”渲染管线在移动端消耗的性能预算,占到了整个画面渲染管线的百分之四十以上。

“宋画笔触”是《燕云十六声》在美术风格上的核心标签,也是项目在立项阶段向网易管理层展示的视觉护城河。它通过一套定制化的后处理着色器,模拟宋代山水画中的皴法笔触和墨色晕染效果,让游戏画面在特定的天气和光照条件下呈现出类似《溪山行旅图》的质感。

这个效果在PC端的表现无可挑剔,测试期间收到的玩家评价中,美术风格的好评率高达百分之九十二。但在移动端,每一层后处理效果都在吃掉宝贵的GPU预算。

大沈在那天下午的会议结束后没有离开会议室。他坐在自己的位置上,打开了笔记本电脑上的性能分析工具,开始逐帧检查移动端渲染管线的GPU占用曲线。屏幕上密密麻麻的波形图显示,当场景中出现大面积植被和水面反射时,GPU占用会瞬间飙升到百分之九十五以上,帧率随之骤降。而这些植被和水面恰恰是清河镇场景视觉构成的核心元素——那些沿河栽种的垂柳、青石板缝隙里的苔藓、雨后积水中倒映的屋檐,每一处细节都是美术团队在过去两年里一笔一笔打磨出来的。

许程是美术总监。他在测试数据出炉后的第一时间就已经意识到了问题的严重性,但他的立场和赵铮、陆辰不同。赵铮和陆辰面对的是玩家不愿意留下来的问题,这个问题可以通过修改设计来解决。许程面对的是玩家愿意进来但性能撑不住的问题,这个问题只能通过削减美术资产的精度来解决。

削减精度,在许程的词典里等同于自毁长城。P0清单第十一条的备注栏里,沈明远写下的建议是在移动端版本中降低“宋画笔触”后处理效果的精度等级,将节省出的性能预算分配给帧率保障。许程在看到这条备注后的第一反应是给沈明远发了一条微信消息,内容直截了当:降低精度之后,清河镇的远山就不是皴法了,是马赛克。沈明远没有回复这条消息。

他在那天下午的会议上把第十一条的讨论时间压缩到了不到五分钟,因为他很清楚,这个问题不是靠讨论能解决的。它需要在技术测试和美术验收之间反复拉锯,而拉锯的过程必然伴随着争吵、妥协和某种程度上的互相伤害。他没有时间让这场拉锯在会议室里公开上演,所以他选择先把条目挂上清单,把具体的冲突推迟到技术测试结果出来之后。

但冲突不会因为推迟而消失。会议结束后的第三天晚上,林铮在引擎组的测试机上跑出了第一轮移动端性能对比数据。

数据显示,如果将“宋画笔触”后处理精度从当前的高等级降低到中等级,移动端在清河镇场景的平均帧率可以从28帧提升到33帧,战斗场景可以稳定在30帧以上。代价是画面中的皴法笔触在远距离观察时会失去层次感,变成一片模糊的灰色调。

许程在拿到这组数据的时候,正在美术组的评审室里过下一版本的场景原画。他看完数据报告之后,把报告放在桌上,对大沈说了一句话:这个代价他付不起。

大沈是技术美术,他的职责是在美术效果和技术性能之间找到平衡点。但他同时也是许程的下属——在Everstone工作室的组织架构中,技术美术归属于美术中心,向许程汇报。这意味着当美术总监说“这个代价付不起”的时候,他在职务上没有强行推进的权力。他只能把问题向上抛,抛给沈明远。

沈明远接到大沈的电话是在那天晚上十一点。他刚从战斗组的工位区走出来,赵铮的团队正在通宵赶第一版起手帧调校的测试包。

电话里大沈把性能数据和许程的反应原原本本说了一遍,最后补充了一句:如果不能在移动端降精度,就只能在场景资产上动手——减少植被密度、简化水面反射、砍掉一部分动态光影。但这些改动对画面的伤害,可能比降后处理精度更大。沈明远在电话里沉默了一会儿。

他说,先不动场景资产,他去和许程谈。这场谈话发生在第二天下午的美术评审室里。房间的墙上挂满了清河镇各个季节、各个天气条件下的场景概念图,每一张都带着那种标志性的宋画质感——远山如黛,近水含烟,屋檐下的阴影不是纯黑,而是带着一层淡淡的赭石色调。许程坐在这些画前面,听沈明远把移动端性能数据从头到尾讲了一遍。许程在沈明远讲完之后开口了。

他承认自己不是不理解技术上的困难,但如果移动端把“宋画笔触”砍掉,这个游戏在手机屏幕上看起来和市面上任何一款武侠MMO没有区别。到那个时候,项目组拿什么去说服玩家这是一款不一样的游戏。沈明远说,拿战斗系统。许程提醒他,战斗系统现在连起手帧都没调完。

沈明远说,四周后会调完。许程看着沈明远,没有立刻接话。他当然知道沈明远的意思——如果必须在“看起来不一样”和“玩起来不一样”之间做选择,后者显然更重要。

但这个逻辑在许程这里并不完全成立,因为在他看来,“看起来不一样”恰恰是“玩起来不一样”的前提。玩家愿意进入这个世界,是因为它看起来像一个真实的宋代江湖;如果它看起来和其他游戏没有区别,那么玩家连进入的意愿都不会有。许程最后说,他做不了这个决定,让陈言来拍板。

沈明远没有把这个问题真的推到陈言那里。他很清楚,如果把“移动端画面降质”这个议题摆到副总裁的办公桌上,陈言的第一反应不会是评估技术方案的优劣,而是质疑项目组在前两年的开发周期里为什么没有提前解决性能问题。这个质疑一旦被提出来,后续的连锁反应可能远远超出美术风格的范畴——它会直接动摇项目在季度复审中的生存概率。所以他选择了一个折中方案。

这个方案没有写在P0清单上,而是在那天晚上由大沈、林铮和许程在技术美术组的工位上口头敲定的:移动端版本保留“宋画笔触”的核心后处理效果,但将精度等级从高降到中高;

同时,对清河镇场景中GPU占用最高的三类资产——沿河垂柳、水面反射和动态云雾——进行选择性削减。垂柳的叶片数量减少百分之三十,水面反射的更新频率从每帧降低到每两帧,动态云雾的渲染距离从五百米缩短到三百米。这个方案在技术上勉强把移动端帧率拉到了30帧的底线,在美术上保住了“宋画笔触”的基本辨识度。

但许程在验收第一版削减后的场景效果时,盯着屏幕上那片被简化了的河岸看了很久。他最后在验收单上签了字,但在签名旁边加了一行备注:此版本为性能妥协版,待移动端硬件迭代后须恢复原精度。没有人知道移动端硬件什么时候会迭代到足以承载原精度的程度。这行备注更像是一个美术总监对自己作品的尊严所做的最后一点维护。P0清单上的条目在会议结束后的第一周内陆续进入执行阶段。

赵铮的团队把办公区变成了一个临时的动作分析场地——他们在墙上贴满了打印出来的逐帧动作分解图,每一张图上都标注了关键帧的时间码和判定框范围。赵铮的要求很明确:所有武器类型的普攻起手帧必须在六帧内完成从按下按键到判定生效的全过程,不允许任何例外。这个要求在执行层面遇到了一个具体的困难。

困难来自刀法动作中那个“沉肩坠肘”的起手式。在测试版本中,这个起手式占用了起手帧前摇阶段的四帧画面——角色先沉肩,再坠肘,最后出刀,三个分解动作依次完成。这个细节是顾知远在半年前的动作评审会上依据宋代刀法“力从地起”的力学逻辑坚持要求加入的,也是Everstone工作室追求深度武打沉浸感的一部分。如果要压缩到六帧以内,就必须把沉肩和坠肘合并到同一帧里完成,或者直接砍掉其中一个分解动作。赵铮选择了合并。

他把沉肩和坠肘的关键帧重叠在同一个时间点上,让角色在起手的第一帧同时完成肩部和肘部的动作预备,第二帧直接出刀。这个修改在动画流畅度上打了折扣——合并后的动作看起来比原版生硬了一些,缺少了那种行云流水的韵律感——但判定生效的时间从九帧压缩到了六帧,刚好踩在沈明远要求的底线上。

顾知远在收到修改后的动作预览视频时,回复了一封邮件。邮件的措辞很克制,但在最后一段还是流露出了一丝不满。他指出,沉肩坠肘并非无意义的装饰性动作,它是宋代刀法“力从地起”的力学基础。合并之后,动作的发力逻辑不再成立,在懂行的玩家眼中会显得虚假。

赵铮没有回复这封邮件。他把邮件转发给了沈明远,在转发附言里写了一句:懂行的玩家占总玩家比例预估不超过百分之五。为了另外百分之九十五能留下来,这百分之五的感受暂时顾不上了。沈明远看了这行附言,没有表态。他把邮件存档到了一个名为“历史考据vs战斗手感”的文件夹里,这个文件夹在过去半年里已经积累了四十多封类似的邮件。

每一封邮件都代表着一场没有赢家的争论——顾知远坚持历史的准确性是游戏的核心价值之一,赵铮坚持手感是玩家留存的生命线,两个人的逻辑在自己的专业领域内都是自洽的,但在同一个项目里,它们必须互相妥协。妥协的结果往往是某一方做出更大的让步。在起手帧调校这件事上,让步的是历史考据。

在下一件事上,让步的可能就是战斗手感。这种交替让步的模式,构成了《燕云十六声》在整个“伤筋动骨”期间最基本的决策逻辑。陆辰的让步来得更早,也更彻底。

他在会议结束后的第三天就交出了重构后的新手村任务链脚本。脚本的第一页是一张全新的任务流程图,图上的箭头不再是测试版本中那种松散的、多分支的引导结构,而是一条笔直的、从起点到终点几乎没有分叉的线性管道。管道的第一个节点标注着战斗教学:基础攻击与格挡,第二个节点标注着轻功演示:跳跃与攀爬,第三个节点标注着剧情推进:清河镇疑云。

这三个节点在测试版本中原本分散在开场前两个小时的不同时间段里,被大量的环境叙事和自由探索内容包裹着。在重构后的版本中,它们被压缩到了前二十五分钟内,一个接一个地强制触发,玩家无法跳过,也无法绕开。陆辰在脚本的扉页上写了一段备注,承认此版本牺牲了叙事节奏的呼吸感,但确保了核心玩法在教学阶段的强制触达。

后续章节将恢复碎片化叙事的尝试,但会加入更明确的视觉引导标记作为折中方案。这段备注的语气平静得像一份技术文档,但了解陆辰的人都知道,让一个花了两年时间打磨叙事理念的人亲手拆掉自己的作品,这种痛苦不是平静的文字能够承载的。他在交稿后的那天晚上没有加班,而是破天荒地在晚上八点就离开了工位。

第二天早上回来的时候,他工位旁边的垃圾桶里多了一团揉皱的打印纸,纸上画满了被反复修改和划掉的任务流程图。那些被划掉的版本里,有他试图保留的碎片化叙事结构,有他试图插入的支线任务触发点,有他试图在新手村埋下的、需要玩家在后续章节中才能解开的叙事伏笔。

所有这些设计都在P0清单的压力下被一一砍掉,最终剩下的就是那条笔直的、毫无余韵的线性管道。赵铮的团队在第一周结束的时候交出了第一版起手帧调校测试包。测试包被部署到内部测试服上,沈明远亲自上机跑了一遍全武器类型的普攻连段。他用的是刀,在清河镇外的练武场木桩上连续砍了五十刀。

五十刀之后,他放下手柄,对站在身后的赵铮说了一句:比之前好了,但还是不够。问题出在第六刀到第七刀之间的连段衔接。沈明远感觉中间有一帧的停顿。赵铮回到工位上重新打开逐帧分析工具,把刀类武器的第六刀到第七刀连段反复播放了三十遍。

在第三十一遍的时候,他找到了那个停顿——那是第六刀收刀动作的最后一帧和第七刀起手动作的第一帧之间,存在一帧的空白。这个空白不是动作设计的缺陷,而是动画状态机在切换连段时的过渡帧没有填充完整。修复这个问题需要重新烘焙刀类武器全连段的动画状态机。赵铮估算了一下工作量,大约需要三天。

他在当天晚上的例会上把这个时间节点报给了沈明远,沈明远在会议记录上标记了一下,没有说话。三天后,修复后的版本再次上机测试。沈明远在练武场木桩上砍了一百刀,没有再发现明显的连段停顿。他在测试记录上签了字,赵铮的起手帧调校任务正式从P0清单上划掉。但划掉一条并不意味着问题解决。

P0清单上的条目在执行过程中会不断衍生出新的子问题,这些子问题又会反过来拖慢其他条目的进度。赵铮的起手帧调校完成后,陆辰发现重构后的新手村战斗教学节点需要重新配置敌人类型——原来的教学敌人配置的是普通山贼,战斗难度过低,无法让玩家真正体验到格挡和闪避的必要性。

但如果提高敌人难度,又需要赵铮的团队重新调整敌人的AI行为树,这又会占用战斗组本已紧张的时间预算。类似的问题在整个“伤筋动骨”期间反复出现。每一个修改都像是一根被扯动的线头,拉出来之后才发现它连着整块布料的经纬。

P0清单上的十七条条目,在执行到第二周的时候,已经衍生出了超过四十条子任务,分布在战斗、叙事、关卡、美术、引擎、UI六个组的工位上。第二周的周三晚上,沈明远在全员例会上做了一个决定。他宣布从即日起到四周期限结束,所有组取消周末休息,每天的工作时间延长到晚上十一点。加班餐由公司统一订,加班结束后打车回家的费用由项目组报销。

这些措施在网易的项目管理流程中有一个标准化的名称,叫做“封闭开发冲刺期”。但参与过多次封闭开发的老人私下里管它叫“住公司”——因为在那段时间里,很多人的工位旁边就放着折叠床和洗漱包。陆辰的折叠床放在他工位后面的墙角里。他在第二周的周四和周五连续两天没有回家,通宵修改新手村任务链的对话文本。

重构后的线性引导虽然解决了玩法释放的问题,但对话文本的密度随之大幅增加——原本分散在环境中的叙事信息,现在需要通过NPC的口头对话集中传递。这意味着陆辰需要在短时间内写出大量符合宋代语言习惯的对话文本,而这些文本又必须和顾知远提供的历史语料库保持一致。顾知远在那两周里意外地成了陆辰最频繁的协作对象。

两个人之间的关系在测试之前并不密切——陆辰是叙事设计师,注重故事的情感节奏和人物弧光;顾知远是历史顾问,注重文本的用典准确和时代语境。两个人在叙事理念上有过不少摩擦,但在P0清单的压力下,这些摩擦被暂时搁置了。

陆辰需要顾知远帮他审核每一段对话中的历史细节,顾知远也需要陆辰在保证准确性的前提下让对话读起来不像学术论文。他们在第二周的周六凌晨三点完成了一批对话文本的联合审核。陆辰在顾知远离开工位之前问了他一个问题:把历史考据做到这个程度,玩家真的会在意吗。顾知远想了想,回答得很诚实。

他说大部分玩家不会在意,但如果有百分之一的玩家因为考据而对这段历史产生了兴趣,那就值得。陆辰没有接话。他看着屏幕上那些被标注了无数修改痕迹的对话文本,想起了一年多前他在立项评审会上对陈言说过的一句话——他们要做的不是一款让玩家觉得自己在玩游戏的产品,而是一款让玩家觉得自己在经历一段历史的作品。那时候他说这句话的时候带着一种近乎天真的笃定。

现在他仍然相信这个方向,但他也清楚地意识到,在玩家愿意“经历一段历史”之前,他们首先需要被一套合格的战斗系统和流畅的新手引导固定在座位上。第三周开始的时候,P0清单上已经有三分之一的条目被划掉了。

赵铮的战斗手感调校完成了刀、剑、枪三种主要武器类型,剩下的奇门武器和暗器类被排在第四周。陆辰的新手村任务链脚本通过了内部审核,进入实际开发阶段。大沈和林铮的移动端性能优化方案在经历了三轮拉锯之后,终于得到了许程的签字认可,但代价是那句“待移动端硬件迭代后须恢复原精度”的备注。

然而,被划掉的条目并不意味着问题彻底解决。它们只是被暂时压到了“可交付”的标准线以上,而这条标准线本身就是一个妥协的产物。每一个参与修改的人心里都清楚,四周时间能做的事情是有限的——你可以把起手帧从九帧压缩到六帧,但你无法在这段时间里重新设计一整套让玩家深度沉浸、并使其感受到自己真正像一位英雄(即一位“侠客”)的武学体系;你可以把新手村的前三十分钟改成线性引导,但你无法从根本上解决碎片化叙事与大众玩家习惯之间的结构性矛盾;

你可以通过削减植被精度和降低后处理等级来保住移动端的30帧底线,但你无法改变一个事实:这款游戏在立项时设定的视觉标准,从一开始就没有为移动端的性能天花板留出足够的余量。这些更深层的问题,在P0清单的高压下被暂时掩盖了。

但它们没有消失,只是在等待一个重新浮出水面的时机。第四周的周五晚上,沈明远在全员会上宣布P0清单全部十七条条目完成内部验收。会议室里响起了一阵稀疏的掌声,但掌声持续的时间很短——不是因为大家不高兴,而是因为所有人都太累了。

四个星期的连续加班把整个项目组的体力压到了极限,赵铮在最后一周瘦了六斤,陆辰的桌上堆了四个空的红牛罐子,大沈的眼睛下面挂着两个明显的黑眼圈。沈明远在宣布验收完成后说了一段话。他说感谢大家在过去的四周里付出的努力,他们解决了很多问题,但他也知道还有很多问题没来得及解决。那些问题会在下一个版本中继续等着他们。

但在那之前,大家先回去好好睡一觉。这段话说完之后,会议室里的人陆续起身离开。陆辰收拾好桌上的文件,走到门口的时候被沈明远叫住了。沈明远告诉他,许程刚才发了一条消息,对移动端场景削减的方案还是不满意,要在下周的全员会上正式提出异议。陆辰愣了一下,问许程想怎么解决。

沈明远说,许程想要恢复清河镇沿河垂柳的原精度,他认为那是整个场景视觉的锚点,砍掉垂柳就等于砍掉了清河镇的灵魂。陆辰追问性能预算从哪里补。沈明远的回答很简短:许程提议砍掉动态天气系统中的雨雪效果。

陆辰沉默了几秒。动态天气系统是开放世界探索体验的核心组成部分,也是P0清单上没有触及的少数几个系统之一。如果许程真的在下周全員会上提出这个方案,那么刚刚结束的这场“伤筋动骨”很可能只是下一场拉锯战的序幕——一场关于如何取舍,如何在有限的能力下锚定那个自己心目中充满情感高潮的游戏世界的拉锯战。走廊尽头的监控室里,李潇还没有走。她面前的屏幕上显示着内部测试服的实时数据面板,那些数字在P0清单验收完成后已经趋于稳定。

但在她的电脑桌面上,一份新创建的性能对比文档正安安静静地躺在文件夹里,文档的标题写着:移动端场景精度争议——许程方案vs现有方案性能预算对比。这份文档还没有被发送给任何人。它只是被创建了出来,等待着被打开的时刻。