程砚在水闸那边处理访客关于"水位变化"的询问。许诺在连理亭门口坐着画速写——今天他没有画空亭,他在画有人的亭子。骆襄铃后来看到他画的那幅画时数了一下,画面里连理亭的内外一共坐了五位访客,分散在坐凳、台阶和门槛的不同位置上,每个人的姿态都不太一样——有人在看水、有人在翻留言本、有人在仰头看紫藤。画中没有一个人是正脸的,全是侧影和背影,但那些背影像是在同一个空间里各自安放着自己的重量。
傍晚收工的时候访客逐渐散了。骆襄铃坐在连理亭里翻着留言本——今天的留言数量比开张第一天还要多,厚厚的一沓纸页被翻过好多次,每一页都写满了不同笔迹和不同长度的回复。她翻到最后一页的时候看到了一行眼熟的铅笔字——跟上次"拾光"留言那种极淡的笔迹不同,这一次是更深的、接近炭笔的灰色:
"我看到了你发的那段触发说明。也看到了许谔在二楼写的那句'沈暮雨'。谢谢你们把他的名字放在了这个水乡的说明书里。——拾光"
骆襄铃把那行字看了两遍,然后把那一页折了一个角。她合上留言本放回原处的时候许诺从连理亭外面走进来,手里端着两杯新泡的"春尾"红茶——应该是在茶棚新煮的。他把其中一杯放在她面前,另一杯放在自己对面的位置上,然后坐下来端起自己的那杯喝了一口。
"今天的留言比开张那天多。"他说。
"嗯。大部分是在说'终于看到沈暮雨这个名字了'。"
许诺端着茶杯在暮色中安静了一会儿。然后他说:"这是他应得的。"
骆襄铃也端起自己那杯茶喝了一口。夜灯正在陆续亮起来,第一盏灯在连理亭檐口亮起的时候,她看到水面上的倒影里那些白天的访客痕迹正在被夜色一点一点地覆盖——水波恢复了均匀的细纹,桃林叶片的声音在夜风中转成另一种频率的沙沙响,茶棚门口的灯笼开始发出暖黄色的光。
"丰收节之后就是夏天了。"她把茶杯放下。"夏日的同城匹配预告——应该下周就出来了。"
许诺"嗯"了一声。他的茶杯也放回了桌面上,杯底在木质的桌面上发出一声极轻的叩响。
"你到时候会开定位吗?"她问。
"会。"他说,"你开的我为什么不开。"
骆襄铃在暮色中弯了一下嘴角。她没有继续追问"匹配到了之后会怎样"——因为"会开"本身就已经是一个回答了。夏季的同城匹配功能开启之后,所有开了定位的玩家会被系统根据真实坐标分配到邻近的"同城频道"里,在频道内可以发帖、组队、约线下活动。她会开,许诺会开,程砚大概也会开——三个人的真实定位在A城的三条不同街道上,会被系统判定为"同城玩家",然后出现在同一个频道的列表里。
"那程砚如果开了定位——"她开口。
"他也会开的。"许诺说,"他比你更早问了'同城匹配什么时候上线'。"
骆襄铃坐在连理亭的暮色中看着许诺的侧脸。程砚"比你更早问了"——她不知道程砚是什么时候问的,但她知道许诺之所以知道这件事,是因为程砚问他的时候他就在旁边。三个人之间那些不需要她在场就已经发生过的对话,正在通过许诺这种不经意的转述一点一点地填进她对"三人关系"的理解框架里。
"夏天来的时候,"她说,"我们可以约在A城那条有石拱桥的河边见面。上次程砚带我们走过的那条。"
许诺侧过头来看了她一眼。"那条河边有石阶可以坐。"
"那就坐在石阶上登录游戏。"骆襄铃说,"然后我们的游戏角色会在同城频道里看到对方的名字上标着'附近'。"
许诺没有接话。但他在暮色中把茶杯端起来又放下的动作比平时慢了半拍——那种"正在想象那个画面"的停顿,让骆襄铃觉得他已经把"三个人坐在河边石阶上登录游戏"的画面在心里预先预览了一遍。
四
周五晚上,夏季版本的预告推送如期而至。
系统邮件在晚上七点四十二分弹进了每一个在线玩家的收件箱。骆襄铃正在书房里整理资料,看到邮件弹出来的时候她停了一下手指才点开。
邮件标题是一行烫金色的花体字——"夏日·同城邻里",副标题写着"游戏内外,相逢有时"。正文用了三段式的排版:第一段介绍新版本的"同城匹配"功能,第二段预告夏季限定的双人副本和活动内容,第三段是一幅半透明的水彩风格插画——画面中一条河岸边坐了三个模糊的人影轮廓,河面上倒映着游戏角色的剪影。
骆襄铃盯着那幅插画看了几秒。画面里河岸边那三个人影的轮廓被画成虚化的状态,看不清具体身份,但其中一人手里握着一把细长的物件的形状,另一人侧坐的位置微微偏左,第三人端着一只杯状物的轮廓——跟她们三个在连理亭常坐的位置分布,恰好一样。
她把邮件截图发到了三人小群里。程砚先回的:"看到预告了。夏季同城匹配功能——我下周会开定位。"
许诺隔了一小会儿才回,他发的不是文字,是一张图。他自己在本地画的一幅速写——构图跟系统预告邮件里的水彩插画几乎一样,但比系统的更具体:河岸的弧度、石阶的级数、三个坐着的人影的距离间隔,都跟他上次在A城那条石拱桥河边散步时看到的实地画面一致。
骆襄铃看着那两幅画——系统的水彩和许诺的速写——在手机屏幕上并排亮着,觉得自己正在从两个不同的角度被同一种夏天的预告包围着。系统的预告在说"这个功能要来了",许诺的画在说"我已经想好我们坐在哪了"。
她把手机锁屏之前又看了一眼那封邮件的底部。整个预告页面的版式设计得很干净,深绿色的底纹配上烫金色的字体,每一行字的位置都经过精细的排布。她的目光在读完正文之后顺延到了页面最底部的"制作团队"信息栏——那里通常列着主策划、文案、美术之类的职位和人员名单。
信息栏的文字很小,深绿色底上印着比底纹略浅的墨绿色字体,她需要凑近才能看清。一行一行地扫下去:"主策划"、"系统设计"、"美术监修"、"活动统筹"——直到最后一行,职位写的是"隐藏模式·特别鸣谢"。
那行字后面跟着一个名字。姓是"沈"字,但名字部分被处理成了一种特殊的排印方式——不是全名,是一个"×"。只有一个字母,像是"沈"字后面被盖上了一个不可读的标记,系统用"×"替代了剩余的部分,但又没有完全遮盖住原字形的轮廓。那个"×"的笔画下面隐约透出原本的墨迹,她眯起眼睛凑近了看——那个被覆盖的笔画形状,隐约是"雨"字的上半部分。
"沈×"。但她知道那个被"×"盖住的字是"雨"。
沈暮雨。
他的名字出现在《桃花劫》夏季版本预告页面最底部的"隐藏模式·特别鸣谢"栏里。被部分覆盖了,但那个覆盖的力度不足以彻底抹去"雨"字的笔画轮廓。她把那一行截了图,放大之后反复看了几遍——那个被"×"覆盖的位置,下面透出的墨迹确实是"雨"字上半部分的两横一竖。
她坐在书房的台灯下看着那张截图。沈暮雨的名字出现在了这个游戏夏季版本的特别鸣谢栏里。不是三年前的《剑雨》存档代码注释,不是本地备份文件中的文字片段——是《桃花劫》正式版本的官方页面上,在"隐藏模式·特别鸣谢"的位置,印刷着"沈×"。
她不知道这个"特别鸣谢"是沈叔生前就安排好的,还是游戏项目组在他离开之后补加的。她不知道那个"×"是谁决定盖上去的,也不知道"隐藏模式"这个栏目到底覆盖了沈叔在这个游戏里留下的多少内容。但她知道他的名字被放在那里了。
她拿着手机从书房走出来穿过庭院走到连理亭。许诺还在亭子里,面前的石桌上摊着那幅速写的底稿——他在系统预告页面发布之后又回去把那幅速写的细节补了一部分,河岸上的三个人影被加深了一度,中间那个人手里的杯状轮廓也比之前清晰了一些。
她把手机上的截图转向他。
许诺看着手机屏幕上"隐藏模式·特别鸣谢——沈×"那一行字,安静了好一阵子。他的目光在那行字上面停留的时间比她看的时候还要长,像是需要在那个被"×"半盖住的名字面前多站一会儿。
"……他给自己留了一个位置。"许诺终于开口了。
"在制作团队名单里。"
"在最下面一行。"
骆襄铃把手机收回口袋里。她在许诺旁边的坐凳上坐下来,看着水面上夜灯的倒影在微风中被揉成细碎的金色光斑。两个人并肩坐着,谁也没有再说话。
水面上的灯影在夜风中持续地晃动。骆襄铃坐在许诺旁边看着那些光斑从散开的状态一点一点地重新聚拢,在心里把"特别鸣谢——沈×"那行字的笔画重新描了一遍。那个被"×"覆盖的"雨"字,在墨绿色的底纹下面仍然保持着自己的轮廓。
"夏天来的时候,"她开口,"那个同城频道开了之后,我们可以在里面发一张照片——拍那条河边的石阶,然后说'这是水乡的第三块地'。"
许诺侧头看了她一眼。"第三块地?"
"第一块是清风庄,第二块是烟雨古镇,第三块——"她停了一下,"是现实里在河边坐下来打开游戏的那个位置。"
许诺在夜灯下把这句话放在心里放了一会儿。然后他说:"那第三块地没有系统边界。"
"没有系统边界。所以可以无限扩张。"
程砚的水闸方向在远处亮了一盏灯——那是他给水闸闸门加装的信号灯,说是"晚间水位变化能看清"。那盏灯在夜色中亮了一小会儿又熄了,像是有个人在远处确认完水位之后关掉了它。
骆襄铃坐在连理亭的夜灯下看着程砚那盏灯熄灭的方向,又转头看了看许诺摊在石桌上的速写底稿上那三个坐在河岸边的人影轮廓,最后把目光落回了水面上那些正在缓慢聚拢的灯影。
夏季预告已经出了。同城匹配功能即将上线。沈叔的名字被列在了特别鸣谢栏的最末一行,用一个"×"盖住了"雨"字的轮廓,但那个轮廓依然能被辨认出来。
她坐在春末最后一夜的暖风中,水乡的夜灯在她面前的水面上持续地亮着——它们每一盏都是沈叔留下的系统的一部分,每一盏都在黑暗中提供了一个可以被识别和跟随的光点。
"夏天快到了。"她说。
许诺坐在她旁边,水面上夜灯的倒影在他的侧脸边缘镀了一层浅金色的轮廓。他看着水道的方向,说了一句:"嗯。都准备好了。"
窗外的A城春夜正在进入最后一层深蓝色的过渡。水乡的夜灯在同一个时刻持续地亮着。程砚的水闸信号灯已经熄灭了,但在她坐的位置看不到的远处,那盏灯在灭之前留下了最后一道在闸门金属表面上的反光。
骆襄铃没有再说话。她坐在许诺旁边,面朝水道的方向,看着那些持续亮着的夜灯。春末的风从西南方向吹过来,带着水面上湿润的、即将转换成初夏频率的气息。
"夏天"这个词在那一刻已经从预告页面的烫金色字体里落到了她坐着的连理亭的石阶边缘,正在她脚边等着被跨过去。
骆襄铃在那个周六上午收到了一封系统邮件。发件人显示为"《桃花劫》项目组·隐藏模式维护组",主题是"关于'特别鸣谢'栏位中'沈×'姓名的补充说明"。
她点开邮件的时候,心里已经有了某种预期。邮件的正文不长:
"尊敬的玩家:您在夏季版本预告页面底部看到的'特别鸣谢'栏位中提及的'沈×',系本项目早期隐藏模式系统的原始设计者。该设计者在项目开发阶段已完成核心框架的搭建与代码书写,后续所有基于该框架的扩展内容均以此为基础展开。"
"因历史记录存档方式变更,原设计者的全名在部分页面展示中采取了缩写形式。我们将在后续版本更新中根据存档数据的恢复情况,逐步完善相关页面的署名信息。"
"感谢您对本项目的关注。"
骆襄铃把邮件读完了一遍,然后重新读了一遍第二段里的"根据存档数据的恢复情况"那个措辞。她不知道"存档数据的恢复情况"是指什么——是沈叔的完整资料在某个环节被覆盖了?还是他本人在离开前主动要求了部分匿名?
她把这封邮件也截了图,存进了"沈叔·线索"的相册里。相册现在有七张图了:沈叔的"暮雨"信笺、暗门后木桌和暮雨剑的照片、烟雨古镇石碑底部的手写字、土壤成分匹配91%的系统备注、暮雨镇"第三层"空数据槽的截图、"拾光"的铅笔留言、以及这封"特别鸣谢补充说明"的邮件截图。
她坐在书房的台灯下把那些截图按照时间顺序重新排列了一遍。从沈叔的信笺到暮雨剑到石碑到土壤匹配到第三层空槽到拾光的铅笔字再到这封关于署名的邮件——所有的线索都在指向同一个方向:沈叔在这个游戏里留下的东西不止是清风庄和烟雨古镇,不止是那三件信物。他在系统深处还预留了更多尚未被完全激活的内容,而那些内容正通过《桃花劫》项目组"根据存档数据的恢复情况"逐步回到可见的状态。
她把那封邮件转发给了许诺,附了一句:"特别鸣谢那行字不是偶然。项目组在恢复他的完整存档。"
许诺的回复在几分钟之后来了。他发了一张自己本地截图——是他保存的暮雨镇备份文件中的一个目录页,其中有一行文件名末尾写着"_archive_full",旁边有一个系统标注的"待恢复"状态标记。
他在这张截图底下只写了一句话:"他留的太多了。我们看到的只是第一层。"
骆襄铃坐在窗台前面看着那句"我们看到的只是第一层",窗外的暮春日光正在从偏东的角度逐渐升高,把水乡地面上的所有阴影都往西推了一小段距离。她看着那句话在手机屏幕上停留了一会儿,然后也回了一行字:"那夏天来了之后,我们往下挖第二层。"
手机屏幕上那个对话框里的两行字隔着一小段空白上下排列着。窗外的日光正在升高,水乡连理亭的檐口在晨光中投下一道斜斜的阴影。许诺坐在那道光线的另一端,手里握着暮雨剑,剑鞘上那段墨色的纹路正在逐渐明亮的日光中变得越来越清晰——那些线条的走向、曲折和末端的圆点标记,正在等待着被读成一张完整的方位图。
夏天的第一阵风即将从水道西南方向吹过来。
而水乡的第三层——和它背后那些还在"存档数据恢复中"等待着被读取的内容——正在逐层地、稳定地,从沈暮雨留下的代码深处上升到阳光照得到的地面。