台北西门町曾是繁华的都市地标,却在六年前因一场大地震而一蹶不振。政府委托一家科技公司,以二〇〇八年的西门町为背景,开发一个“看起来真实、摸起来真实、听起来真实”的虚拟商圈Virtua Street,没想到在最后的测试阶段,这个虚拟空间里竟然发生了一件杀人案!
报案者是Virtua Street的天才设计师大山和下属小露。两人在做测试时,因为系统的数据出现问题而进入虚拟世界调查,结果看到了一具趴在街角的“尸体”!警方调查后发现,死者是后脑遭重击而亡,然而,现实世界里的陈尸地点是一个从内反锁的房间,虚拟世界里则找不到任何凶器。更奇怪的是,系统显示案发当时,Virtua Street内只有死者一人——不,除了死者以外,还有另外两个人,那就是尸体的发现者,最清楚这整个虚拟空间的大山和小露……
虚拟空间里的犯罪
现实世界中的命案
恶意与杀意的轮转
三重解构,硬核诡计,意外真相
华语推理名家 宠物先生
第一届岛田庄司推理小说奖获奖作
宠物先生 / 作者
本名王建闵,台湾推理作家协会会员。
若借用人面狮身兽斯芬克斯的形容:早晨是喜欢推理谜题的动物,中午是爱看推理漫画的动物,傍晚则是变成嗜读推理小说的动物。近年也开始接触恐怖、奇幻与科幻等有“谜”的非推理小说,并试图在创作中与推理相结合,以期能发挥最大的能量。
曾以《犯罪红线》获得第五届人狼城推理文学奖首奖,另著有短篇《名为杀意的观察报告》《冻夏杀机》,与短篇集《吾乃杂种》。长篇《虚拟街头漂流记》获得第一届岛田庄司推理小说奖首奖。
序章 脐带
第一部 Whodunit
第一章 而立之年·乡愁
第二章 而立之年·漂流(一)
第三章 而立之年·胎动
第四章 女儿·初啼
第二部 Howdunit
第五章 而立之年·涟漪
第六章 而立之年·漂流(二)
第七章 而立之年·悖论
第八章 女儿·乍见
第三部 Whydunit
第九章 而立之年·悸动
第十章 而立之年·漂流(三)
第十一章 而立之年·崩坏
第十二章 女儿·永劫
终章 铭印
“哔哔哔──”
我清理便当的残骸,将头转向数据比对的指示灯,仍然是绿色,我叹了口气。
早上,难得来到“蜂窝”──测试部办公室──的大山,还特地请人牵了几条管线过来,如此劳师动众,只为了昨晚他跟我提的数据系统测试。看他亲自下场组装元件,我觉得很不好意思。
“好啦!大功告成。”他拍拍沾满灰尘的衬衫。
桌上放着两台一模一样的机器,连接着许多管线,左边是我用过的旧系统,右边应该是新系统。
大山打开两个系统的开关,两台机器的面板上立刻浮现许多数字。
“好,这样就没问题了。”大山转头对我说:“这两台机器每分钟会更新一次资料,请你定时去检查两台的数据是否相同,直到晚上九点压力测试结束为止。”
“每组数据都要比对?”天啊!
“喔,差点忘了。”
他搔搔头,指着一个连接两台机器的小灯。
“如果两台数据一样,就是绿色;只要一组数据不一样,就会变成红色。”
“要做记录吗?”
“不用,只要在变成红色的时候通知我就好。”确认机器运作正常后,大山带着疲惫的神情离开了。
附近的同事又靠过来:“喂,大山是不是对你有意思啊?”
“说什么啊!我们只是上司和部属的关系。”
“可是,我看他最近常过来。”
“那是因为VirtuaStreet测试得紧,再加上我们比较熟。而且,其实我和他八字不太对盘。”
同事带着一脸疑惑回到座位,我开始和一堆机器奋战。
我不时去确认那小灯,小灯总是伴随“哔哔哔──”的声音亮起,且每次都是绿色。两台机器的第一个栏位是Players,应该是指目前在虚拟世界的人数,且面板都一样,似乎没什么差异,不知道大山昨天说的“加了一些功能”是指什么。
为了避免错过信号转换,我尽量不去上厕所,还请同事帮我买便当,再以秋风扫落叶般的气势解决。
就这么度过一个工作日,距离晚上九点还有两小时,线上人数也越来越少。
午休的时候没有休息,我开始有点疲惫,意识逐渐抛到九霄云外。
九点后,要给大山报告──我突然想起早上和同事的对话。
或许外人都看不出来,其实大山对我而言,比较像是天敌──也就是蟑螂和蜘蛛、老鼠和蛇、水虎鱼和河豚的关系。
我来到西门分部后,很快就和大山熟络起来。他给人的感觉的确不像一般的上司,总会让对方体认到一股“对等”的气氛。
所以在某次闲谈时,我把自己入行这几年来一直抱持的疑问,毫不保留地问出口。
“和机器对话,有趣吗?”
虽然在相关产业工作,但其实我和妈妈的观念类似,对成天埋首屏幕、写程序的男生有种“你们是在和非生物对话”的感觉,因此在大学时期,我很讨厌程序语言课,反而在外语方面显得较有兴趣,甚至怀疑自己是不是读错科系了。
“有趣啊!就和人类对话一样。”他回答我时,嘴角露出淡淡的浅笑,“而且简单。”
“可是,和机器对话久了,不会觉得模式太类似,脑袋有些僵化吗?”
“你这么说,是对机器的歧视喔!会觉得模式类似,是因为机器被赋予的思想太单纯,但就技术层面来看,要机器拥有和人类一样的思考,却也不过是迟早的事。现今我们和机器沟通,都得通过程序语言,但要经由一般人的语言来对机器下指令,已经是指日可待了。到时候,和机器对话就跟和人对话一样,没什么区别。”
“可是,机器不去给指令就不会动,这点和人不一样。”
“人类不也是吗?要外来刺激才会有反应。”
“才不是,人类会主动关心别人。”
“那只是一种被教育的情感罢了。”他哈哈大笑,“机器也可以输入这种情感。”
我那时被他的回答弄得有点恼怒,拼命想找出“人性”独有的部分,企图推翻他的理论,但不久发现其实怎么说都一样,因为在他的观念中,没有什么性格、行为是机器无法设定的,高度科技发展下的机器,要和人类完全相同也不是不可能。
有点像费尔巴哈(Ludwig Andreas Feuerbach)的唯物主义。
那是我第一次彻底败北。之后我们又有零星的几次争论,虽然每次我都无法认同他的意见,却都找不出话反驳,之后我就学乖了,每当意见有冲突,我都会设法引开话题,虽然不是每次都成功,但只要成功,我的情绪就不会太糟。
每当他开始发表论点,都会先微微一笑,最后话题中止时,又会以一个深切的笑容做结尾。
天敌。
连同上次“公私分明”的话题,目前我对他的战绩是三胜七败,胜率百分之三十。
哔哔哔──
嗒、嗒、嗒──
哔哔哔──嗒、嗒、嗒──
断续交替的机械声与脚步声,在我耳边响起。
我猛然惊醒,拾起放在一旁的手表──已经过了九点。
“醒啦?”大山交叉着双手站在一旁,他的语气不带任何感情,甚至是责骂或不悦都没有。
我马上发现了原因。
因为他的眼睛正盯着指示灯看,而且指示灯在我打瞌睡的这段时间背叛了我,变成红色。
“对、对不起。”
“没关系。”仍然不带感情。“可是,怎么可能……”
他是指“怎么可能会不一样”吧!研发人员在测试之前,对自己写的程序通常信心十足,因此出错时都会显得难以置信的样子,大山尤其如此。
我将视线转向两台机器。光第一项Players的数据就不同了,左边那台显示“1”,右边的显示“0”,换言之,旧系统认为现在还有一人在虚拟世界里,新系统则认为没有人。
“会是bug吗?”
“有可能……不,还不能确定。”大山抚着下唇,像在思考某个问题,“难道是Zombie?”
“僵尸?”突然听到奇怪的词汇,我感到疑惑。
“啊!该不会……”
大山的脸孔突然有点扭曲,但旋即恢复正常,过了不久,他将脸转向我。
“露华,可不可以帮我一个忙?我知道你应该下班了,还要求你这个有点无理……”
“没关系,你尽管说。”
我对他方才的表情有些介意。
“就是……”他将放在我桌上的一沓纸摊开,上面出现我昨天给小皮看的西门町平面图,“我想进入VirtuaStreet看一下,你能不能和我一起去?两个人巡视比较快。”
“巡视?”
“嗯,把西门町都走一遍,看看是不是还有人留在里面。”
他说完后,也不等我点头,立刻转身离开办公室,往二楼的VR室走去。
“我们就分开搜寻吧!先从东西向的四条大路找起。”
我戴上头戴式显示器,穿上体感衣,启动系统后,耳边传来隔壁VR室大山的声音。两个房间其实隔着一层厚厚的墙壁,因此我有些纳闷,后来才知道,原来大山在更改界面的同时,也在“大厅”新增了聊天系统,让每位使用者可以指定另一名使用者对话。
当然,进入虚拟街道后,就不需要聊天系统了。只要两人的位置够接近,就能自由谈话。
“要怎么走?”我大声询问。
“这样好了,你等一下从峨眉街中华路口出发。”传来大山的回答。“然后沿着峨眉街直走到康定路口,我从武昌街中华路口出发,沿着武昌街走到康定路口,然后我们在电影公园那里先会合,报告彼此情况。”
我在脑中描绘出搜寻路线。
“接下来,我们两人各自往反方向走,你走向成都路那一边,我走向汉口街那一边,然后我们各自沿着成都路和汉口街直走,走到中华路口,在中华路的中段,也就是制服街那里再会合一次。”
“原来如此,所以是先巡视较大的四条路。”
“对,如果什么都没发现,再想另外的办法。不多说了,我要进去了。”
我到现在才发觉,眼前浮着一个半透明的选单,就像昨天大山展示给我看的那样。
“快!时间到了就会强制进入一号门喔!”
“喔、喔……”我立刻伸手碰触‘2’的按钮。
眼前瞬间一片黑暗,身体开始有浮起来的感觉,这就是“传送”吗?
即将被传送时,我突然感到头戴式显示器的后方有些紧,有种“后脑勺被按在墙上”的错觉。
然而那时的我完全没想到,那是即将面对“死亡”的预感。