第 30 章
幸存者的重负
杭州网易园区三号楼,空调出风口在二月午后发出持续的低频嗡鸣。会议室白板上还残留着十一天前经营分析会的痕迹——周敏用红笔圈出的数字,何志远标注的留存曲线,林婉清写下又被擦掉一半的笔记。没有人清理。它们像手术后留在皮肤里的缝合钉,不被触碰,但始终在那里。
沈明远站在窗边,手机屏幕亮着。事业群HR的确认邮件只有三行字:编制冻结即日生效,预算削减百分之三十,Q2商业化指标维持不变。他读完,把手机翻扣在窗台上。“八点开会。”他的声音不大,“全员。”
何志远从报表里抬起头。林婉清的手指在键盘上停住。周敏的计算器没了声响。赵谦的铅笔停在纸面上——那张纸上只有反复涂抹又擦掉的线条。沈明远走出会议室,经过开放办公区。一些工位从春节后就空着,显示器蒙着薄灰。今天那些空位格外显眼。他回到工位,打开企业微信,开始草拟发言提纲。写了三行,删掉。再写,再删。最后他关掉文档,靠在椅背上。十一天前,他们还在为保住项目而战。现在项目保住了,但他没有如释重负的感觉,取而代之的是一种在深水中行走的疲惫,每一步都要对抗看不见的阻力。
下午六点四十分,主策划陈砚的工位空了。不是暂时离开的那种空——显示器关了,键盘推进支架下方,桌面上那本从立项就放在那里的《武经总要》复印件不见了,只留下一个长方形的灰尘印记。何志远是第一个注意到的。他本来想找陈砚确认下周版本规划会上要讨论的战斗系统调整方案,走到工位前,看到那片灰尘印记,停住了。
他打开企业微信,找到陈砚的对话框。最后一条消息停留在三天前,一份关于轻功系统优化的建议文档。往上翻,是那些关于战斗机制的争论,关于历史考据的讨论,关于NPC对话选项应该体现怎样江湖礼数的深夜长谈。他退出对话框,给沈明远发了一条消息:“陈砚走了。”沈明远的回复在三十秒后到达:“到我办公室。”
那间用玻璃隔断隔出的小办公室里,沈明远站在文件柜前,手里拿着一份离职申请,纸的边缘被捏出了褶皱。“今天下午递的。理由写得很客气——个人职业规划,想尝试新的方向。”他把纸放在桌上,“但他在最后加了一句。”何志远低头看那页纸。在标准的离职申请模板下方,陈砚用钢笔多写了一行字:我加入这个项目,是想做一款能让人记住的游戏。现在我不确定我们还能不能做到。何志远读完,沉默了几秒,把纸放回桌上。“问题是,接下来还会有多少人走。”沈明远说。
这个问题在当晚的全员会议上得到了某种回答——不是以言语的形式,而是以沉默的形式。晚上八点,三楼大会议室。Everstone工作室《燕云十六声》项目组现有编制六十七人,实到五十八人。缺席的九人中,三人出差,两人病假,四人——包括陈砚——已经或正在办理离职。沈明远站在投影幕布前,没有打开投影仪。“今天下午,陈砚提交了离职申请。”他的声音平稳,“他是这个项目的第三位员工,仅次于我和赵谦。从立项第一天起,他就负责战斗系统的设计。你们在游戏里玩到的每一个招式动作,每一套连击逻辑,背后都有他的手。”会议室里有人低下头,有人盯着桌面。
“我不会说他的离开不重要。我也不会说我们会找到更好的人替代他——编制冻结了,我们找不到任何人。”沈明远停顿了一下,“我能告诉你们的是,项目还在。我们还在。”
他扫视了一圈会议室。五十八张面孔,有些从立项之初就认识,有些是去年才加入的新人。荧光灯下,每个人的脸都显得苍白而疲惫。
“事业群给了我们一个季度的时间。一个季度,把数据拉回来。具体指标周敏会发到各位的企业微信。我不打算美化这个目标——它很难,甚至可能不合理。但它是我们继续存在的条件。”
沈明远说到这里,停了下来。他原本准备了一份更长的发言稿,包括对项目方向的重新阐述,对团队士气的激励,对未来的展望。但站在这里,看着这些面孔,那些话说不出口了。“先活下来再说。”
会议室里响起了几声干涩的笑。这句话在过去十一天里,已经在不同的场合、不同的小群、不同的私下对话中被重复过无数次。沈明远只是把它正式化了。何志远坐在第二排,手里转着一支笔。他注意到赵谦没有笑。这位从项目立项就担任主美的老搭档盯着自己的速写本,铅笔在纸面上划出短促而用力的线条。何志远侧头看了一眼——赵谦在画一座城门,是开封城南的朱雀门,他们在2023年花了三个月时间考据和建模的那座。会议在八点三十五分结束。没有掌声,没有提问环节。人们沉默地起身,沉默地走回工位,沉默地打开电脑。沈明远回到办公室,关上门,在黑暗中坐了很久。
第二天上午十点,版本规划会。这是内部审判后的第一次正式版本规划会。参会人员:沈明远、何志远、林婉清、周敏、赵谦,以及服务器端主程刘铮、移动端适配负责人孙昊。原定参会的主策划陈砚的名字已从会议邀请中删除。会议室白板上的旧数据被擦掉了,取而代之的是一行标题:Q2版本路线图(草案)。何志远打开Excel表格,投影到幕布上。“目前我们在运营的是1.2版本。按照原计划,1.3版本应该在三月中旬上线,主要内容是开封城北扩展区域、新门派天机阁、以及第三章主线任务的后续分支。”他切换到下一页,“但以目前的资源配置——编制冻结、预算削减百分之三十——原计划必须调整。”
“砍什么。”刘铮问。他的问题很直接。服务器端最近在优化清河渡口的地图加载速度,那是公测首日大量玩家流失的关键节点,他的团队已经连续加班三周。何志远看了一眼沈明远。“砍天机阁。”沈明远说,“新门派的动作捕捉、技能特效、平衡性测试,整个管线拉下来至少需要四个月。我们没有四个月。Q2必须上线能直接拉动付费的内容。”会议室里安静了几秒。“那第三章主线呢。”林婉清的声音很轻,但每个人都听出了其中的紧张。“第三章主线保留,”何志远说,“但分支选项从原设计的七个缩减到三个。减少配音量,部分过场动画用文字演出替代。”
林婉清的手指在笔记本键盘上停住了。“七个分支缩减到三个,意味着至少四条叙事线被砍掉。其中有两条是和开封城市民身份系统联动的——玩家在前两章做的选择,会影响到第三章里NPC对玩家的态度。”“我知道。”“那是我们花了八个月搭建的系统。”林婉清的声音仍然很轻,但语速在加快,“建筑身份系统、市民阶层反应链、基于历史考据的社会关系网络——这些是我们在内部评审时向事业群展示的核心竞争力。现在你要把它们砍掉。”何志远没有回避她的目光。“不是我要砍。是我们必须砍。”林婉清盯着他。
何志远切换到下一页表格,上面列着各种选项,每个选项后面都跟着预估的开发周期和预期收益。“开封城北扩展区域是拉动留存的关键。如果我们只上新区域不加新系统,玩家会抱怨内容单薄。如果只上新系统不扩区域,我们拿什么做宣传。”周敏打破了沉默:“从市场数据看,移动端用户对复杂叙事分支的感知度很低。我们在公测首月做的用户调研显示,只有百分之十二的移动端玩家会重复体验不同选择的分支剧情。大部分人是‘一遍过’——做出选择,看到结果,然后继续推进。他们不会回头去探索如果选了另一个选项会怎样。”
林婉清合上笔记本电脑。“每次我们讨论优化,优化掉的都是那些让这个项目区别于其他产品的部分。上次是战斗系统的深度,上上次是开封城的NPC行为逻辑,这次是主线叙事的分支。我们一直在砍,一直在减,一直在妥协。砍到最后,这个项目还剩下什么。”会议室里的空气凝固了。赵谦放下了铅笔。他一直在画,从会议开始就没停过。现在他把速写本转过来,让所有人看到——他画的不是朱雀门,而是一棵树。一棵根系复杂、枝干繁茂的树,但每一根枝条都在被修剪,被削短,被砍掉,最后只剩下光秃秃的主干。“先活下来再说。”赵谦说。这是他今天在会议上说的第一句话,声音沙哑,像很久没喝水。没有人回应他。
版本规划会在十二点二十分结束。最终的结论是:1.3版本延期至四月中旬,内容调整为开封城北扩展区域、第三章主线(三条分支)、以及一个全新的“江湖行商”系统。最后这个是周敏提的——一个融合了跑商和资源交易的轻度玩法,开发周期短,可以直接接入付费点。
林婉清在会议结束后没有去食堂。她回到自己的工位,打开第三章主线的原始设计文档。那份文档有八十七页,是她和陈砚在2024年夏天花了两周时间闭关写出来的。文档里详细规划了七条叙事分支如何与开封城的NPC社会网络交互,如何让玩家在不同阶层之间游走,如何通过选择揭示五代十国时期不同人群的生存状态。
她滚动鼠标,一页一页往下翻。翻到第三十二页,看到陈砚在批注里写的一句话:这里要体现的不是对与错,而是每一种选择都有代价。江湖不是道德判断题,是生存题。
林婉清关掉文档,打开企业微信,找到陈砚的对话框。她想发点什么——一句告别,一句挽留,或者只是确认他是否真的走了。但对话框上方显示“对方已退出企业”。她盯着那行灰色的小字,眼眶发酸。
下午两点,刘铮在技术群里发了一条消息:“服务器端下周开始做江湖行商系统的数据接口。谁有策划案。”回复他的人不多。以前陈砚会第一个跳出来,发一份详细的系统设计文档,附上流程图和数值模型。但现在那个头像已经灰了。孙昊接过了协调工作。他是去年才加入项目组的,主要负责移动端适配。在内部审判之前,他的工作重心是优化移动端的渲染效率和操作手感。现在他的任务清单上多了一整列新项目:江湖行商系统的移动端UI适配、简化版主线分支的触屏交互方案、以及一个被临时加进来的首充礼包弹窗设计。
首充礼包这个词第一次出现在项目组的正式文档里,是在经营分析会后的第三天。周敏在一封邮件里提到,移动端用户的付费转化率远低于行业平均水平,建议参考同品类产品的做法,增加首次充值引导和限时优惠。沈明远看到那封邮件时,在椅子上坐了很久。立项之初,他们在产品定位文档里写过一句话:《燕云十六声》不做强制付费引导,所有内容均可通过游戏内行为获取。那是他们对玩家的承诺,也是他们在内部评审时用来对抗商业化压力的盾牌。现在这块盾牌正在出现裂缝。他没有回复那封邮件。但三天后,首充礼包出现在了1.3版本的功能清单里,标注为P0优先级——必须完成,没有商量余地。
二月十七日,第三位核心成员提交了离职申请。这次是负责音效设计的王远。他在Everstone工作室工作了四年,从《逆水寒》的资料片开始就跟着沈明远的团队。在《燕云十六声》项目里,他负责所有环境音效和战斗音效的设计——清河渡口的流水声、开封夜市的喧哗声、剑刃破空的锐响、马蹄踏过石板路的节奏。他的离职理由写得很短:项目方向与个人创作理念产生分歧。沈明远没有挽留。编制冻结意味着王远走后的空缺无法填补,但同时也意味着他没有更多筹码说服一个已经决定离开的人。他能提供的——创作空间、技术挑战、对品质的追求——正在被一个一个地压缩。
王远走的那天,音效组的三个年轻人站在门口送他。他们都是入职不到两年的新人,看着组里资历最深的同事抱着纸箱走进电梯,不知道该说什么。
其中一个叫李响的音效师回到工位后,在内部论坛上看到了一条帖子。发帖人匿名,标题是“我们还在坚持什么”。帖子里没有提到具体人名,但每一个在项目组待过三个月以上的人都能读出那些细节指向谁——那个总是加班到最晚的系统策划,那个为了一个战斗动作反复调整十几版的动画师,那个在开封城模型前坐了整整一周只为了调整光影的主美。帖子最后一段写道:以前我们争论的是怎样做更好,现在讨论的是怎样做能过。以前我们再说做一版,现在说先这样吧。以前我们相信自己在做一件值得的事情,现在我们只是在完成工作。这不是谁的错,但这就是正在发生的事。
帖子在当天下午被删除了,但已经有很多人截了图。林婉清是截图的人之一。她把那段话保存在手机里,偶尔在深夜加班时会翻出来看一遍。每一次看,都觉得那些字句在变重。
二月二十日,周四。沈明远召集了一次核心团队的非正式会议。地点不在会议室,而在园区三号楼后面的长椅上——那是他们立项初期经常讨论问题的地方。2022年夏天,沈明远、陈砚、赵谦三个人就是坐在这条长椅上,第一次认真讨论了如果要做一款真正基于历史的武侠游戏,它应该是什么样子。现在只剩下两个人了。赵谦坐在长椅一端,手里还是那本速写本。沈明远坐在另一端,看着对面楼里亮着灯的窗户。那是网易互娱事业群的办公楼,陈言的办公室就在其中一扇窗户后面。
“刘铮今天跟我说,他收到了猎头的消息。”沈明远说,“竞品公司,开价涨百分之四十。”“他怎么说。”“他说他还在考虑。”赵谦翻开速写本,找到一页空白。“刘铮从引擎选型阶段就在这个项目。他知道我们服务器端的每一行代码是怎么写出来的。如果他走了——”“接替他的人需要至少三个月才能熟悉架构。”沈明远接过话,“而我们没有三个月。”赵谦的铅笔在纸面上划出一道短线。“所以我们要在三个月内,用更少的人、更少的钱、更少的试错空间,做出足够拉回数据的版本。同时还要祈祷剩下的核心成员不会被猎头挖走。”“差不多。”
长久的沉默。沈明远抬头看着杭州二月的天空,灰蒙蒙的,像蒙着一层洗不掉的旧色。赵谦合上速写本。“我今天下午在改开封城北扩展区域的概念图。新区域有一条街,叫染坊巷,设计的原型是《东京梦华录》里记载的西大街——北宋开封最繁华的商业街之一。我们去年做考据的时候,查到一条记载,说西大街的染坊会在门口挂不同颜色的布幡,代表当天能染的颜色。”他顿了顿,“我画那些布幡的时候,忽然想到一个问题。我们做这些考据,做这些细节,做这些只有百分之一的玩家会注意到的内容——到底是为了什么。”
沈明远转头看着他。“以前我觉得答案很简单:因为我们想做一款好游戏。”赵谦的声音很平,像在陈述一个与自己无关的事实,“但现在我不确定了。也许我们从一开始就错了。也许市场不需要一款好游戏,它只需要一款能赚钱的游戏。而我们花了三年时间,只是证明了这两个目标之间的差距有多大。”沈明远想说什么,但赵谦站了起来。“我先回去了。染坊巷的概念图明天给你看。”他走了几步,又停下来,没有回头。“沈明远,如果有一天我也走了,你别觉得意外。”
沈明远一个人坐在长椅上,直到园区的路灯亮起来。那天晚上,他回到办公室,打开一个从立项初期就在用的笔记本。那是2022年3月,项目代号还是Project Sixteen的时候,他写下第一页笔记的本子。他翻到第一页,上面写着:目标:做一款基于五代十国历史的开放世界武侠游戏。核心原则有五条——历史考据优先于戏剧性;玩家选择产生真实后果;不做强制付费引导;内容质量高于内容数量;团队共识高于个人权威。
他盯着那几行字看了很久,然后翻到最新的一页,拿起笔,在空白处写下:2025年2月20日。陈砚已走,王远已走。刘铮在考虑。赵谦说如果有一天他也走了,别觉得意外。今天在长椅上,赵谦问:我们做这些细节,到底是为了什么。我没有回答他。因为我自己也不知道答案了。他放下笔,合上笔记本,把它放回抽屉最深处。
二月二十四日,周一。新一周的版本规划会上,何志远展示了一份更新后的排期表。
江湖行商系统的开发进度比预期快——不是因为团队效率提高了,而是因为设计被大幅简化。原计划中的动态物价系统、NPC交易偏好算法、以及基于玩家声望的折扣机制都被砍掉了,取而代之的是一个标准的跑商循环:在A点买入,运到B点卖出,差价乘以距离系数,得出收益。
林婉清在会议上问了这个问题:这跟市面上任何一款跑商系统有什么区别。何志远回答得很直接:没有区别。但开发周期从六周压缩到两周,可以在四月中旬上线。林婉清没有再说话。
她打开自己的笔记本,在第三章主线分支的文档里继续删减。七条分支变成三条,意味着她要砍掉超过一半的已录制配音、已完成的过场动画、以及已编写好的NPC对话树。每删掉一个文件,她都会在备注栏里写一行字:因版本调整移除。到下午四点,她已经写了四十七行同样的备注。
四点半,移动端适配组的孙昊发来一条消息:林姐,第三章分支简化后的触屏交互方案我看了。有个问题——原设计里玩家在分支点需要跟三个不同的NPC对话来获取信息,然后做出选择。现在砍成一条线之后,三个NPC合并成一个,对话树也合并了。但合并后的对话逻辑有bug,在某些前置条件下会跳到空节点。
林婉清打开孙昊发来的流程图。那是一个被粗暴缝合的对话树,不同分支的枝干被剪断,断口用胶带粘在一起,勉强维持着一个树形的轮廓。但任何一个稍微认真一点的玩家,都会发现那些接缝——NPC的立场会突然转变,信息会前后矛盾,选择的结果会与提示不符。
她盯着那张图看了十分钟,然后给孙昊回复:空节点用默认对话填充。优先级P2,不影响主流程就行。
发送完这条消息,她靠在椅背上,闭上眼睛。优先级P2,不影响主流程就行——这是她今天说出的第十几次类似的判断。每一次说出这样的话,她都感觉自己的一部分在流失。不是精力,不是时间,而是某种更本质的东西:那种让她在2022年选择加入这个项目的信念——相信好的内容值得被做出来,相信玩家能感受到创作者的用心,相信认真做事最终会被认可。现在她不再确定这些了。
三月的第一周,刘铮的离职申请正式提交。他没有当面告诉沈明远。他选择在周五下午五点四十分,通过企业微信发送了一份PDF文档。文档标题是“离职申请”,内容写得很职业——感谢公司的培养,珍惜在项目组的经历,因个人发展原因选择离开,将做好交接工作。
沈明远收到消息时,正在看江湖行商系统的第一次内部测试数据。测试结果显示,跑商循环的基础功能可以正常运行,但玩家反馈集中在几个词上:单调、重复、不知道为什么要在游戏里做这个。他读完刘铮的离职申请,关掉测试数据页面,在椅子上坐了很久。
刘铮的离开意味着服务器端失去了最熟悉架构的人。他的副手程浩可以接手日常维护,但程浩加入项目才一年半,对那些从引擎选型阶段就沉淀下来的底层逻辑并不完全了解。如果服务器出现重大故障,修复时间会成倍增加。沈明远给刘铮回了消息:明天聊。
第二天是周六。他们在园区附近的咖啡馆见面。刘铮比沈明远小三岁,戴着黑框眼镜,说话时习惯用手指敲桌面——那是长期敲代码留下的肌肉记忆。沈明远直接问了猎头开价。刘铮愣了一下,报了一个数字。沈明远点点头。“比我预期的低。你应该值更多。”“不是钱的问题。”刘铮说,“至少不全是。”他搅动着杯子里的咖啡,奶泡在表面画出漩涡,沉默了一会儿。
“上个月服务器出过一次故障。凌晨三点,清河渡口的加载线程崩溃,在线玩家掉了百分之四十。我接到报警,从床上爬起来,远程连上服务器,花了两个小时定位问题、写补丁、热更新。”他喝了一口咖啡,“修完bug之后,我看着监控面板上恢复正常的玩家数量曲线,忽然想到一个问题。我在做什么。我在凌晨三点修复一个游戏的服务器,让那些在清河渡口挂机的玩家可以继续挂机。而三个月前,我在做什么。我在和陈砚讨论怎么优化轻功系统的网络同步延迟,让玩家在飞檐走壁时的操作手感更流畅。”他放下杯子,“同样是写代码,前者让我觉得自己是一个运维。后者让我觉得自己是一个创作者。”
沈明远没有接话。他知道刘铮说的不只是自己。“我知道项目现在很难。”刘铮说,“我也知道你们在做各种妥协是为了让项目活下去。但沈哥,你有没有想过——当我们做了足够多的妥协之后,活下来的还是不是我们最初想做的东西。”这个问题沈明远回答不了。
刘铮在三月底正式离职。他走的那天,服务器端的所有同事在楼下送他。程浩接过了他的工作牌和权限账号,成为新的服务器端负责人。程浩在交接文档的最后一页写了一行字:我会尽力。但我不保证能做得像他一样好。
沈明远看到那行字时,想起2023年夏天的一个场景。那时项目还在开发中期,刘铮为了优化无缝大地图的加载效率,连续两周睡在办公室。有一天凌晨,沈明远加班到很晚,路过服务器端的工位区,看到刘铮对着三块屏幕调试代码,旁边放着半盒冷掉的炒面。他问刘铮怎么还不走。刘铮没抬头,说这个加载逻辑再优化一轮,应该能把延迟压到零点三秒以内。沈明远问他,零点三秒和零点五秒,玩家能感觉到吗。刘铮转过头,认真地看着他,说,我能感觉到。
那是沈明远记忆里,这个项目最值得被记住的时刻之一——不是因为它产生了多大的商业价值,而是因为有人在乎那些细节,在乎到愿意为它熬夜,为它吃冷掉的炒面,为它对抗整个行业对差不多就行的默许。现在刘铮走了,带着他对零点三秒的在乎。
四月初,1.3版本的开发进入冲刺阶段。江湖行商系统完成了第二轮测试。数据比第一轮好——不是因为系统变有趣了,而是因为周敏在测试服里加入了限时双倍收益的活动。玩家为了拿到更多游戏币,忍受了跑商的单调。林婉清在测试服里跑了一遍完整的行商流程:从开封城南的货栈买入茶叶,骑马运到城北的集市卖出,差价是百分之十五;然后从集市买入布料,运回城南,差价是百分之十二。整个过程耗时十二分钟,操作就是骑马、点NPC、再骑马、再点NPC。她退出测试服,在反馈文档里写了一行字:功能可用。不建议亲友体验。
赵谦的染坊巷概念图在四月的第二个周五通过了评审。不是因为他画得特别好——这一版概念图比他以往的作品都要粗糙。通过的原因是时间不够了。如果再让他细化下去,整个开封城北扩展区域的美术资源都会卡住。
评审会上,赵谦把概念图投影到幕布上。那条街有二十三栋建筑,每一栋都在概念图里标了功能:染坊、布庄、茶馆、当铺、客栈。但建筑的外观细节只有轮廓,没有他以前会花好几周去打磨的砖雕纹样、木窗棂花样、招牌字体。赵谦说细节部分会在建模阶段补充。没有人追问补充到什么程度。每个人都知道答案:补充到时间允许的程度。而时间不会允许太多。
评审通过后,赵谦回到工位,把概念图的原文件收进一个叫“理想版本”的文件夹。那个文件夹里有开封城南朱雀门的精细雕花、清河渡口船篷的竹编纹理、以及他在2024年画的一套完整的开封夜市招牌字体——每一块招牌上的字都参考了宋代碑帖的笔法。他关上文件夹,打开建模软件,开始用最快的速度搭建染坊巷的白模。
四月十五日,1.3版本上线前最后一次全员测试。沈明远、何志远、林婉清、周敏、赵谦、程浩、孙昊——所有还在项目组的人,都在测试服里跑了一遍新版本。从清河渡口出发,经过开封城南,进入新开的城北区域,触发第三章主线,体验江湖行商。
测试持续了四个小时。结束后,沈明远在会议室里等着反馈。程浩第一个发言:“服务器端压力正常。新区域的加载速度比老区域慢零点八秒,在可接受范围。”孙昊第二个:“移动端适配基本完成。城北区域的渲染效率比预期低,低端机型会出现掉帧。建议降低远景细节。”周敏第三个:“行商系统的付费点接入正常。首充礼包的弹窗逻辑没问题。但测试组反馈,有玩家在体验行商时退出了游戏,退出节点集中在第二次跑商循环开始前。”
林婉清最后一个发言。她打开笔记本,翻到测试记录。“第三章主线。三条分支我都跑了。第一条分支的剧情逻辑基本通顺。第二条分支在第三个选择节点出现对话空窗——NPC说完上一句,下一句延迟了四秒才弹出。孙昊说这是移动端触屏交互的bug,已经在修。”
她翻到下一页,“第三条分支——就是砍掉四条分支后合并出来的那条——有一个剧情逻辑错误。玩家在前置任务里选择帮助了城南的商人,但在后续对话里,NPC把玩家当成帮助了城北官员的人来回应。这是因为合并对话树时,前置条件判断没有更新。”
会议室里安静了几秒。沈明远问能不能修。林婉清说能,但需要重新梳理整条分支的对话树,预估工作量三天。
上线时间是四月二十日,距离上线还有五天。三天修bug,两天做最终测试,理论上刚好够。沈明远说修。林婉清点点头,合上笔记本。
测试反馈会结束后,赵谦留了下来。他在投影幕布上调出染坊巷的实际游戏画面。那是他从白模开始,用六周时间搭建出来的街道。建筑有颜色,有纹理,有招牌。
但任何一个看过他以前作品的人,都能看出差距——砖墙的贴图分辨率不够,导致近看时纹理模糊;窗户的镂空雕花用了通用素材,而不是他以前会一笔一笔画出来的定制纹样;招牌上的字体是标准楷书,不是他参考宋代碑帖设计的那套。
赵谦指着屏幕:“这条街,它功能上是完整的。玩家可以走进每一栋建筑,可以和NPC对话,可以买卖物品,可以触发任务。但它不是开封。”
他转向沈明远,“它是任何一个古风游戏的任何一条商业街。它没有身份。没有历史。没有我们花了两年时间研究的那些东西。”
沈明远看着屏幕上的染坊巷。他知道赵谦说的是对的。这条街在功能上合格,在商业上可用,在时间上按时交付。但它缺少某种东西——那种让开封城在第一次封闭测试时让玩家惊叹“这是活的”的东西。“我们没有时间。”沈明远说。“我知道。”
赵谦关掉投影,“所以我把它做出来了。我只是想让你知道——我知道它不够好。”他收起笔记本电脑,走向门口,在门口停下来。“以前我会为不够好而失眠。现在不会了。”
四月二十日,1.3版本按时上线。数据在当天晚上汇总到周敏的仪表盘上。新增的城北区域吸引了部分老玩家回流,次日留存率从百分之三十四点七上升到百分之三十七点二。江湖行商系统的首日参与率是百分之二十一,低于预期。首充礼包的转化率是百分之四点三,略高于行业平均水平。周敏在数据报告里写道:版本更新产生正向拉动,但幅度不足以达成Q2目标。
沈明远看到这份报告时,是四月二十一日的凌晨一点。他坐在办公室里,屏幕上是周敏的邮件,旁边是林婉清提交的第三章分支bug修复确认单,再旁边是赵谦发来的城北区域玩家截图合集——那些截图里,玩家在染坊巷拍照,在城北的城墙上眺望,在新建的茶馆里挂机聊天。
玩家在玩。游戏在运行。版本在更新。项目活下来了。他关掉所有窗口,打开那个从立项初期就在用的笔记本,翻到最后一页。在2025年2月20日的那段话下面,他写:4月20日。1.3版本上线。数据有小幅回升。团队还在。
刘铮走了。陈砚走了。王远走了。林婉清还在。赵谦还在。何志远还在。周敏还在。程浩接过了服务器端。孙昊在修移动端的bug。今天赵谦说,以前他会为不够好而失眠,现在不会了。
我想,这就是幸存者的重负——不是某一次失败,不是某一个决定,而是每一天都在告诉自己:先活下来再说。然后某一天你发现,你已经习惯了不够好。

他合上笔记本,关了灯,走出办公室。开放办公区还有几个工位亮着灯。林婉清在改第四章主线的早期草案——那是1.4版本的内容,虽然1.4版本能不能做、什么时候做、做成什么样,都还是未知数。赵谦在画新的概念图,这次是城北的官府区域。孙昊对着三台测试手机,反复调试移动端的渲染参数。没有人说话,只有键盘敲击声和空调出风口的嗡嗡声。沈明远走过这些工位,走向电梯。在等电梯的时候,他看到墙上贴着一张褪色的海报——那是2024年项目第一次封闭测试时做的,上面印着游戏的口号:江湖不远,在历史深处。电梯门开了。他走进去,按下1楼。门关上之前,他又看了一眼那张海报。然后电梯开始下降,海报消失在视线之外。