洛长安再次睁开眼睛的时候,看到了熟悉的天花板。
不是办公室那根坏掉的灯管——那根灯管每亮三秒就闪一下,他已经看了整整两年,闭着眼睛都能画出它的闪烁频率。眼前的天花板是乳白色的,正中央是一盏吸顶灯,灯罩边缘有一道裂缝,是去年冬天他换灯泡的时候螺丝刀磕上去的。窗帘没有拉紧,清晨的灰白色天光从缝隙里漏进来,在床对面的墙壁上画了一道竖直的光斑。
他躺在家里的床上。后背的睡衣湿透了,黏在皮肤上,冰凉。
洛长安猛地坐起来,动作太急,后脑勺撞到了床头板。疼痛让他的意识彻底清醒,但同时也带来了一种强烈的不真实感——我刚才不是死了吗?
连续的回忆像决堤的水涌进来。加班。心脏骤停。救护车。对讲机里的电流噪音。放映厅。猩红色的座椅。银幕上的预告片——自己躺在血泊中的画面,胸口插着一把刀,刀柄上那只戴着银戒指的左手。还有那个声音,那个从他大脑内部直接响起的声音:致命事件将在未来24小时内发生。
他掀开被子,光着脚踩在冰凉的地板上,连拖鞋都没穿就冲进了卫生间。镜子里的自己看起来糟透了——脸色发灰,眼白布满血丝,下眼眶的青色深得像是被人揍了一拳。他把水龙头拧到最大,捧起冷水往脸上泼了三把,然后双手撑着洗手台边缘,盯着镜子里那张狼狈的脸,试图理清思路。
今天是十一月十九日,星期六。他死的那天是十一月十七日,星期四。也就是说,他在放映厅里看到预告的那个瞬间,距离他“死亡”至少已经过去了整整两天。但这具身体是温暖的,有心跳,有呼吸,有被冷水刺激后的应激反应——他没有死。或者说,他又活过来了。
“叮。”
脑海里突然响起一声轻响。紧接着,一块半透明的面板凭空出现在他视野的右上角,像是直接投射在他的视网膜上。面板的背景是黑色的,边框是暗红色的,和放映厅里的壁灯颜色一模一样。
【宿主状态】
姓名:洛长安
当前状态:已激活(第17号放映厅·端口持有者)
生命体征:正常
剩余【记忆碎片】:100/100
已观看预告次数:1次(死亡预告×1)
距下次预告播映:约17小时后(入睡后自动进入放映厅)
距本次预告中的致命事件发生:约18小时32分钟(明日凌晨1:00-2:00)
洛长安盯着“记忆碎片”那一栏看了好一会儿,还没来得及问这到底是什么东西,面板上的文字就自动滚动刷新,像是系统预判了他的疑问。
【记忆碎片·说明】
记忆碎片是放映厅中唯一被认可的“硬通货”。每片记忆碎片对应宿主的一段明确记忆。使用记忆碎片后,该段记忆将被永久抹除,不可恢复。主要用途包括:修改预告中的单一元素;向其他端口持有者购买信息或服务;兑换放映厅提供的特殊道具或权限。
【重要警告】
记忆碎片的消耗是不可逆的。当记忆碎片归零时,宿主将不再记得自己是谁。届时,端口将被回收,宿主将以“空壳”状态存在于世,直到自然死亡或意外身亡。
洛长安的拇指下意识地掐了一下食指指腹,疼痛让他确认自己不是在做梦。有人在他的脑子里装了一个系统,每天给他播放死亡预告片,让他想办法改变必死的结局,而改变的手段是吃掉自己的记忆——吃到最后,连自己是谁都不记得。这叫什么事?
他走出卫生间,开始在屋子里走动。卧室、客厅、厨房、阳台——每一间房都和他记忆中一模一样。茶几上摊着他周四晚上煮的泡面,汤早就干了,面条粘在碗底,结成了一层灰白色的硬壳。电视遥控器掉在沙发垫缝隙里,冰箱里的酸奶保质期只到昨天。一切都证明了同一件事:他死了两天,然后又莫名其妙地活了过来,脑子里多了一个放映厅,即将在明天凌晨被人用刀捅死。而凶手有一只左手,无名指上戴着一枚银戒指。
洛长安站在客厅中央,闭上眼睛,在脑海里调出了那段被系统缓存的“关键画面”。那一帧静止图像在他意识中展开,每一个细节都纤毫毕现——他自己倒在地上,胸口插着刀,鲜血在身下蔓延,颜色是接近黑色的深红。刀柄上握着一只左手。无名指上的银戒指,戒面不是素面,上面刻着一个图案。他把意识聚焦在那个图案上,一点一点放大。
那是一只鸟。一只展翅的鸟,线条简洁,像是某种徽记或者家族纹章。鸟的翅膀张开的角度很特别——不是水平展开的,而是向斜上方扬起,头朝左,尾朝右,姿态像是正要俯冲。他没见过这个图案。
他睁开眼睛,走到电脑桌前坐下,按下电源键。等待启动的这十几秒里,他的手不自觉地摸到了键盘上那个被磨得发亮的空格键,食指在上面来回摩擦——这是他思考时的习惯动作。浏览器打开,搜索引擎输入:银戒指,鸟形图案,徽记。结果当然是大海捞针。他换了十几个关键词组合,翻了几十页搜索结果,没有任何匹配的信息。世界上有多少种鸟,就有多少种以鸟为主题的徽记设计,光凭一个模糊的图案根本不可能锁定具体的人和身份。
但他注意到了一件事:那只鸟的姿态。俯冲中的鸟,翅膀向斜上方扬起。这个姿态不符合任何一种自然状态下鸟类飞行或降落的姿势,它太过刻意,更像是一种经过精心设计的符号——某种象征意义大于美学意义的标志。
洛长安合上电脑,站起身,开始在屋子里踱步。他是一个程序员,他处理问题的本能是把所有变量拆解成可以被逻辑分析的单元,然后逐一排查。现在他面对的情况是一道逻辑题,只不过赌注是他的命。已知条件:凶手会在明天凌晨1:00到2:00之间动手;凶手左手戴着一枚刻有俯冲鸟形图案的银戒指;凶案发生的地点有一扇铁质防盗门,门牌号的最后两位是03;门外的走廊里有一盏忽明忽暗的声控灯;他的死法是胸部贯穿性刀伤。未知条件:凶手是谁?动机是什么?地点在哪里?他为什么会出现在那个地点?
他开始在脑海中检索所有他知道的门牌号尾数为03的地点。他的公寓门牌号是1207。办公室是开放式工位区,没有独立的防盗门。父母家是独栋老房子,没有门牌号。朋友的住处——他快速过了一遍,没有03。也就是说,他现在还不知道自己会在哪里被杀。那就意味着:如果他在明晚十二点之前离开这座城市,去一个完全陌生的地方,凶手就不可能在那扇铁门前杀死他——因为那个地点根本就不在他的行动轨迹之内。
这个想法让他停住了脚步。如果预告片里的事件可以这样被简单地规避——只要不去那个地点就行了——那系统为什么要设置“记忆碎片”这么高昂的代价?除非预告的机制不允许纯粹的“逃避”。
“叮。”系统提示音在意念触发的瞬间响起,面板上弹出一行新的文字。
【预告规则补充说明】
预告画面中的事件是宿主的“因果必然终点”。宿主若选择刻意规避画面中的所有已知条件(如离开城市),外部环境将自动调整,以保证因果链在更高维度上实现闭合。简而言之:逃避只会改变事件发生的方式,不会改变事件本身的发生。
洛长安沉默了片刻。用大白话说:不管你跑到哪里,该来的还是会来,只是换一种方式来。所以他只能面对。
他走到阳台上,推开玻璃门。十一月的冷风灌进来,吹得他打了个哆嗦。他把双手搭在冰凉的金属栏杆上,俯瞰着楼下的街道。周末清晨的小区没什么人,只有一个穿灰色棉袄的老大爷在花坛边上慢悠悠地打太极。楼下超市的卷帘门还关着,门口的电子屏上滚动着“鸡蛋特价3.9元/斤”的红色大字。一切看上去都无比正常。但这种正常本身就不正常——因为按照正常的逻辑,他应该已经死了。他活在一种不应该存在的“续集”里,而续集的情节已经写好了:主角在第二幕开场后不久被杀。
他不会等死。他从来不是一个消极的人,他的整个职业生涯就是不断地找bug、修bug、上线、再找新的bug——问题永远存在,但问题也永远有解决的办法。只是这一回,deadline是一个具体的时刻:明天凌晨1:00。
他转身回到屋里,换上一身干净的衣服——深灰色夹克、黑色长裤、运动鞋。穿夹克的时候,他的手指在衣领上停了一秒。这就是预告画面里那件衣服。他可以换一件,但既然逃避没有用,那他不如让尽量多的已知条件保持不变,这样至少能保证他在可预见的框架内行动。
他出了门。他需要找到那扇铁质防盗门——尾号03的门牌,忽明忽暗的声控灯。这两个条件叠在一起,已经足够筛掉大部分的可能性。他决定从自己的行动轨迹开始排查:工作地点、常去的餐馆和商铺、所有朋友的住处、父母家。如果那扇门不在这些地方,那么他今天一定会被某种“巧合”引导过去。
他没有等太久。上午十点十七分,他的手机响了。来电显示是一个本地陌生号码,尾号0347。洛长安盯着屏幕上那四个数字,心跳快了半拍,接起来,按了免提。
“喂?”
“洛先生吗?您好,我是城西德裕小区物业管理处的,您名下那套三号楼的房子,我们这边查到最后一次物业费还是去年交的,想跟您确认一下……”
洛长安的大脑飞速运转。城西德裕小区,三号楼。他从来没有在城西买过房子。但电话那头的人准确叫出了他的姓氏。
“稍等,”他打断了对方的话,声音维持着平静,“我下午过去一趟,当面确认。地址再发我一遍。”
挂掉电话之后,他打开了手机地图,输入“城西德裕小区”。地图定位到了城市西郊的一片住宅区。卫星图像显示那是一片老式多层住宅,建于二十年前,总共八栋楼,楼体外墙的涂料已经大面积剥落,看起来像是城市扩张浪潮中被遗忘的一小块孤岛。
他查了一下“三号楼”的具体位置,然后开始翻阅这套房子的相关记录。没有记录。他的银行流水里没有这笔房贷,手机相册里没有这套房子的照片,微信聊天记录里没有任何与德裕小区相关的对话。这套房子就像是从虚空中突然冒出来的,强行嵌入了他的生活轨迹中。
洛长安盯着地图上那个红色的定位标记,慢慢地呼出了一口气。要么,这是一套凭空出现的房产——系统直接修改了现实,给他安排了一个“死亡地点”。要么,这套房子一直存在于他的生活中,只是因为某些原因,他“不记得了”。他想起了那个数字:100/100。他的记忆碎片还是满的,这意味着他还没有被删除过任何记忆。但这不代表他的记忆是完整的——也许在他成为“端口持有者”之前,有些记忆就已经不在了。这个念头让他的后背泛起一层细密的寒意。
他叫了一辆网约车,目的地城西德裕小区。车子在城市高架上行驶了将近四十分钟。窗外的建筑从密集的商业楼群逐渐过渡到稀疏的城郊住宅,最后变成了一排排看起来都差不多的老旧小区。天空从上午的灰白色变成了阴沉的铅灰色,云层压得很低,像是随时要下雨。
德裕小区的入口没有任何门禁。一道生锈的铁栅栏门敞开着,车轮碾过门槛的时候发出咣当一声巨响,震得车窗玻璃嗡嗡响。门卫室的窗户关着,里面看不到人。三号楼在小区的东北角,是最靠近围墙的那一栋。楼体六层高,外墙的米黄色涂料已经褪成了灰白色,上面布满了雨水冲刷后留下的黑色霉斑。每个单元的防盗门都是铁质的,漆面斑驳,有的地方露出了下面暗红色的铁锈。
洛长安站在三号楼的单元门口,看着门框上那块蓝色的门牌:三号楼。他抬头往上看。这是一栋一梯两户的板楼,每个单元每层只有两户,总共二十四户。而他需要找到的是其中一扇门牌号尾数为03的防盗门。
他深吸一口气,拉开了单元门。楼道里的声控灯在他拉门的一瞬间亮了,惨白色的灯光照在灰扑扑的水泥楼梯上。墙面上贴满了小广告——疏通下水道、高价回收旧家电、办证、刻章。那些广告纸层层叠叠地糊在一起,有些已经发了黄,边缘卷起来,露出下面更早一层的小广告。
一楼,101,102。二楼,201,202。声控灯在二楼到三楼的楼梯转角处开始闪烁——忽明忽暗,闪烁的频率不像是电压不稳造成的,更像是某种有规律的脉冲。亮,暗,亮,暗,每一次间隔的时间都几乎相同。灯光亮起的时候,墙壁上的小广告清晰得刺眼;熄灭的时候,整个楼梯间陷入完全的黑暗。洛长安的手指扶在落满灰尘的楼梯扶手上,一节一节往上走。
他意识到了什么。那盏忽明忽暗的声控灯——预告画面里的那条走廊尽头,就有一盏这样的灯。这栋楼里一定有一盏灯也是这样坏的。
四楼,401,402。五楼,501,502。五楼到六楼的转角处,声控灯闪了三下,然后彻底熄灭。洛长安站在黑暗中,等了五秒,用力跺了一下脚。灯重新亮了,稳定地亮着。不是这一盏。他继续往上走,到了六楼。楼梯间在六楼就到了尽头,左右两扇门,601和602。没有03结尾的门牌号。他敲了敲门,没有人应答。不是这里。
他从六楼退下来,回到单元门口,又看了一眼门牌。三号楼,尾号03的门牌——但三号楼的每一户门牌编号都是从01到02,尾号只有1和2,不存在03。除非——他转身看向小区另一个方向,那边还有一栋楼,入口的门牌上写着:三号楼·二单元。门牌下面还有一行小字,被铁锈盖住了一半。洛长安走过去,伸手抹掉铁锈末,看清了那行字:“二单元:701-1202。”701。703。705。803。903。1003。洛长安的呼吸顿了一下。
他推开二单元的防盗门,走进楼道。一楼是701和702。二楼是801和802。三楼的声控灯在亮与暗之间缓慢地闪烁,频率和刚才那盏坏灯一模一样。洛长安站在那盏灯下,看着灯光在他脚下的水泥地面上投下一明一暗的交替光影。他继续往上走。四楼,901,902。五楼,1001,1002。五楼到六楼的转角处没有灯,黑得伸手不见五指。洛长安打开手机手电筒,光束切开黑暗,照在斑驳的墙皮上,照在墙角堆积的灰尘和烟头上,照在了一行歪歪扭扭的粉笔字上——“1103欠电费半年,已断”。
他的目光从粉笔字上移开,向上看去。六楼到了,1101,1102。七楼,1201。楼梯还在继续往上延伸,但在七楼的平台上,楼道被一堵砌死的砖墙封住了。红色的砖块粗糙地垒在一起,缝隙里填着发黑的水泥砂浆。砖墙的中央有一扇铁质防盗门,门框嵌在砖墙里,像是后期硬加上去的。
洛长安把手电筒的光对准那扇门的门框上方。门牌号的位置只剩下一块长方形的白色印记,原来的牌子被人撬掉了。但在门框边缘的墙皮上,有人用记号笔写了一个数字——笔迹潦草,墨迹被潮气晕开,但依然能辨认出来。
1303。
洛长安的心跳声在空荡的楼道里被放大了好几倍。他找到了。铁质防盗门,尾号03的门牌,忽明忽暗的声控灯。预告画面里的三个关键条件,在这里全部匹配。现在他只需要确认一件事:门里面是什么。
他的手伸向门把手——那是一把圆形的老式把手,表面镀铬已经磨掉大半,露出底层生锈的金属。他的手指刚触碰到冰冷的金属表面,后背突然窜起一股本能的颤栗——不是温度变化引起的生理反应,而是某种更原始的、来自生存本能的警告信号。
有人在看着他。
洛长安猛地回头。手机的手电筒光束扫过身后空无一人的楼梯间。墙壁上只有他的影子——不,不止一个影子。在1101那扇门的门缝下面,露出了一双鞋的鞋尖。黑色的皮鞋,鞋面擦得很干净,光亮得能反射出手机手电筒的白光。鞋尖朝向外面,也就是说,有一个人正站在1101那扇门的后面,隔着一扇薄薄的铁皮防盗门,和他面对面,距离不到两米。
手电筒的光束照在那双鞋上,停留了整整五秒。鞋尖没有移动。
然后洛长安的目光落到了鞋子的左侧。门缝下面露出的空间很小,但足够看到一小截手背。那是左手。无名指上,一枚银戒指在手机灯光的照射下,反射出一线微弱的、冰冷的光芒。