第2章 现实副本加载中
武康在“字节跳动”咖啡馆坐了十七分钟,已经续了第二杯水。
他第八次看向手机——两点零三分,离约定时间还有二十七分钟。太早了,他知道。但与其在家对着衣柜纠结穿哪件衬衫,他宁愿提前出来受这份等待的煎熬。
手指无意识地敲着木质桌面,敲出一段《超级马里奥》地下关的BGM节奏。敲到第三遍时,他猛地停住,把手塞进卫衣口袋。太傻了,万一被看见……
“先生,需要帮您把咖啡热一下吗?”服务员端着托盘过来。
“啊?哦,好。”武康回过神,才发现自己点的两杯美式已经凉透了,表面的油脂凝成难看的斑点。他想起月半曲——不,马上就是艾馨儿了——三年前打《咖啡谈话》时,她操控的角色说过一句台词:“冷掉的美式就像过期的代码,能喝,但糟蹋了。”
他会不会搞砸?会不会见面后空气突然安静?会不会发现耳机里的默契只是虚拟世界的幻觉?
“冷静,武康。”他对自己说,“就当是新副本开荒。”
又过了仿佛一个世纪那么长的十四分钟。窗外飘起细雨,上海春天的雨总是这样,悄没声地来,把街道染成湿漉漉的灰调色板。武康盯着玻璃上滑落的水痕,脑子里莫名冒出《生化危机》里雨夜关卡的场景。
“武康?”
声音从侧后方传来,清脆,带着点试探,和耳机里听了三年的那个声音重叠,又有些微不同——少了一点电流的修饰,多了一点真实的温度。
武康转头。
女孩站在两米外,白色衬衫的袖子随意卷到小臂,牛仔裤洗得有点发白,帆布鞋鞋尖沾着雨水。她没打伞,头发扎成马尾,几缕碎发湿漉漉地贴在额角。眼睛很亮,不是那种精致的漂亮,而是……像凌晨三点写完最后一行代码、按下运行键时屏幕亮起的那种光。
“艾馨儿。”武康站起来,动作太急,膝盖撞到桌角,发出沉闷的“咚”声。
疼。但他脸上绷得平静。
艾馨儿笑了。不是耳机里那种轻笑,是实实在在的笑,眼睛弯起来,右边脸颊有个很浅的酒窝。“和想象中差不多。”她说,声音里的紧张松了下来。
武康这才意识到自己一直屏着呼吸。“你也是。”他拉开对面的椅子,“坐。咖啡……我让服务员热一下。”
“不用。”艾馨儿坐下,很自然地把双肩包放在旁边空椅上——黑色,上面别着《塞尔达传说》的守护者徽章。她看了眼桌上的两杯咖啡:“美式?不加糖?”
“你怎么知道?”
“打《荒野大镖客2》那次,你说过。”艾馨儿端起杯子,抿了一口冷掉的咖啡,眉头都没皱一下,“‘现实里我只喝美式,就像游戏里我只用左轮,简单直接。’原话。”
武康愣住了。他自己都忘了说过这话。那是两年前的事了,他们为了拿一个线上奖杯,在游戏里连续打了十六个小时的德州扑克。
“你记性真好。”他说。
“代码记不住,废话记得牢。”艾馨儿把背包拉链拉开一点,露出里面的Switch收纳包,“顺便,我带来了。”
“什么?”
“《双人成行》啊。”她眨眨眼,“虽然约了下周六,但万一今天聊崩了,至少还能打两局挽回一下。”
武康笑出声来。那点残存的紧张,像被戳破的气球,“噗”一下泄光了。
后来的两小时,时间过得像开了加速器。
他们从Unity和Unreal Engine的优劣,聊到React和Vue在前端项目里的实际应用;从《塞尔达:王国之泪》的物理引擎有多离谱,聊到《极乐迪斯科》里哪段政治哲学对话最让人头皮发麻。武康说起他公司最近接的烂项目,甲方要求做一个“元宇宙养猪场”;艾馨儿吐槽她们文创公司的产品经理,非要给敦煌壁画AR项目加上“社交恋爱系统”。
“他说要让飞天仙女和游客网恋。”艾馨儿翻了个白眼,“我问他逻辑呢,他说‘爱情要什么逻辑’。”
“然后呢?”
“然后我给他看了我写的三千字技术驳回文档。”艾馨儿得意地晃了晃手机,“附带十七个可能出现的BUG模拟演示。”
武康竖起大拇指:“不愧是月半曲。”
窗外的雨渐渐大了,在玻璃上织成细密的水网。咖啡馆里人多了起来,嘈杂的人声、咖啡机蒸汽声、爵士乐背景音混在一起,但武康觉得那些声音都退得很远。很奇怪,明明是三年来第一次面对面,却像已经这样面对面很多次了。
艾馨儿看了眼手机屏幕——不是看时间,武康注意到,是看电量。她的手机壳是透明的,里面夹着一张《密特罗德》萨姆斯的像素画。
“下一关去哪?”她忽然问。
武康愣了下。这个词从耳机转移到现实空间,有种微妙的不真实感。但他几乎没犹豫:“附近有家VR体验馆,新上了双人解谜副本。《时空迷宫》,Steam上评价不错,但本地化版本加了新关卡。”
艾馨儿的眼睛肉眼可见地亮起来,像游戏里角色触发任务时的特效光。“现实版的多人协作?”她已经开始收拾背包,“走,开荒去。”
“等等。”武康叫住她,指了指窗外,“雨大了。”
“所以?”
“所以……”武康从背包里掏出一把折叠伞,黑色,很小,显然只够一个人用,“我带了伞,但——”
“挤挤呗。”艾馨儿很自然地说,“总比淋湿强。我背包里有Switch,进水就完蛋了。”
于是出现了相当滑稽的一幕:一米八的武康举着一把迷你伞,努力把大半边倾向艾馨儿那边,自己的左肩很快湿了一片。艾馨儿则抱着背包,低头躲在他撑出的那一小片干燥里,脚步踩得很小心,避开地上的水洼。
“你这伞,”她评价,“像《只狼》里的纸人,看着有用,其实很脆。”
“上次团建发的,凑合用。”武康说。雨水顺着他的刘海滴下来,有点痒,但他没手去擦。
VR体验馆在商场五楼,工作日下午没什么人。他们选了《时空迷宫》的双人副本——需要两个人分别操控时间和空间维度,合作解谜。戴头盔前,工作人员例行讲解:“两位第一次玩的话,建议选简单模式,这个本挺难的……”
“直接困难。”武康和艾馨儿同时开口。
工作人员愣了一下,看看武康,又看看艾馨儿。“行……那祝你们顺利。”
头盔戴上的瞬间,现实世界被剥离。武康置身于一个悬浮的立方体房间,面前是流淌着数据流的光墙。耳机里传来艾馨儿的声音,经过VR设备的处理,又变回了那种熟悉的、略带电子感的音质:“我这边是时间轴,可控流速和方向。你那边呢?”
“空间结构,能旋转、折叠、创造通路。”武康适应着操作手柄,“第一关看起来是基础教学,但角落里有隐藏计时器,我猜限时内有彩蛋。”
“发现了。”艾馨儿说,“倒计时三分钟开始。老规矩?”
“老规矩。你控速,我铺路。”
接下来的两小时,是武康半年以来最专注也最畅快的两小时。他们破解了七个关卡,包括工作人员说的“至今没人解锁”的隐藏密室。艾馨儿对时间流速的操控精准到秒,武康则把空间折叠玩出了花——有一次他直接把整条通道对折,让艾馨儿操控的角色“跨过”了一道理论上需要十分钟才能绕过的障碍。
摘下头盔时,两人额头都出了层薄汗。工作人员看他们的眼神像看怪物:“你们……以前玩过?”
“第一次。”艾馨儿抽了张纸巾擦汗,“不过游戏机制和《传送门2》挺像的,触类旁通。”
武康补充:“而且她时间感好,我空间感强,互补。”
走出体验馆时,天已经全黑了。雨还没停,但小了些,变成细细的雨丝。商场霓虹灯在水洼里碎成一片片流动的光斑。武康再次撑开那把可怜的小伞。
“今天同步率多少?”艾馨儿忽然问。她没看他,仰头看着商场顶棚滴落的水珠。
武康认真想了想。现实不是游戏,没有系统统计,但他心里有自己的一套评估算法:对话流畅度、决策一致性、突发状况配合度……
“现实延迟比游戏高。”他说,“而且有太多不可控变量——比如刚才在‘时间回廊’那关,我差点被NPC的突然转身干扰判断。综合来看……”
他顿了顿:“92%左右吧。”
艾馨儿转过头看他。商场的光在她眼睛里映出小小的亮点。“及格了。”她说,然后笑起来,那个酒窝又出现了。
地铁站入口亮着温暖的黄色灯光。两人在闸机前停下,武康收伞,水滴在地上洇开一小片深色。
“那……”他开口,却不知道该说什么。剧本到这里好像该结束了,但总觉得少了个任务完成提示音。
艾馨儿从背包侧袋掏出一张卡片,是体验馆送的会员券。“下周六,”她说,“《双人成行》实体版到货。我买了双份手柄。”
武康心脏轻轻跳了一下。“我家也有。”
“那来我家。”艾馨儿说得理所当然,“我电视大,55寸。而且……”她压低声音,像分享什么秘密,“我改了客厅的灯光系统,能同步游戏场景氛围。”
武康笑了:“行。我带零食。”
“要辣的。”
“知道。你打《空洞骑士》时说过,压力大的时候就想吃变态辣。”
艾馨儿眼睛弯了弯,刷卡进站。走了两步,又回头:“对了。”
“嗯?”
“下次带把大点的伞。”她指了指武康湿透的左肩,“92%的同步率,不能折在硬件上。”
武康低头看看自己狼狈的肩膀,又看看她消失在电梯拐角的背影,忽然觉得这场“现实副本”的开局,好像比预期中顺利那么一点点。
雨还在下。他打开手机,给那个备注了三年“月半曲”的账号发了条消息:
“安全到家说一声。”
几秒后,回复弹出:
“你也是。PS:刚才第三关,如果你早0.5秒折叠空间,我们能省二十秒。”
武康站在地铁口,对着手机屏幕笑出声来。
现实副本,加载完成。
开始运行。