
元宵夜,贵妃贾元春回荣国府省亲。贾家耗费巨资改建旧园迎她,她却更想见祖母史太君、母亲王夫人、弟弟贾宝玉。寄居府中的林黛玉与薛宝钗也获召入见。黛玉父母双亡,与宝玉情投意合。宝钗是王夫人的外甥女,随母亲和哥哥薛蟠从金陵来京。薛蟠曾在那里闹出人命,仗着钱势逃过追究。宝玉出生时口衔一块刻着“莫失莫忘、仙寿恒昌”的通灵宝玉,不喜读书做官,喜与园中女子相处。临别时,元春将新园题名为“大观园”,准妹妹们搬入,命宝玉同住。
荣府管家赖大的儿子赖尚荣刚升任刑部官员,便受北静郡王水溶召见。郡王曾在秦可卿的葬礼上结识宝玉,这次拿出一张从异鸟腿上取下的便笺。纸上的“假”谐音“贾”,“石头”指金陵(旧称石头城),两处都让人想到金陵贾家。便笺写着女子或在“众目睽睽之下死去”,或在暗夜飘行,突然变成僵尸,懵懂身亡,还说“恶人横行久,好人受冤屈”。元春近来也担心园中姐妹遭祸,郡王便叮嘱尚荣留意,若有不测,须与宝玉合作查明真相。
春日的大观园里,惜春准备画一幅全园图。香菱随宝钗搬入园中,眉心有颗胭脂痣,自幼遭拐卖,先卖给冯渊,又卖给薛蟠为妾。薛蟠为争夺她,命人殴打冯渊,冯渊伤重身亡,官府却没有追究。宝玉正读公案和验尸书,试着从凶手与查案者两面思考。黛玉翻到一则故事:一名判官的妻子提醒丈夫检查死者头顶,帮他找到藏在发间的钉伤,却也暴露了自己用同样手法杀害前夫。黛玉因此感叹,揭开谜团未必总带来好事。两人一同葬花。宝钗偶然翻看宝玉留在石上的书,神色渐渐惊恐。
尚荣奉命留意大观园,顾虑自己出身仆人之家,不便贸然进入内园。母亲给他看探春所写的《海棠诗社成立之旨趣》,他看着标题,总觉得“诗”字像“谜”,疑心诗社另有用意。海棠诗社在秋爽斋成立,宝玉、黛玉、宝钗、探春、惜春、李纨都在席上。史湘云到来时,看见旁边有个空座,座前写着迎春雅号“菱洲”的卡片,迎春本人却不见踪影。湘云自幼失去父母,寄居叔父家,性情爽朗。
尚荣察觉父母似乎隐瞒着宁府旧事,又听见宁府老仆焦醉后大骂有人“爬灰”。他追查得知,贾蓉的妻子秦可卿在天香楼上吊身亡,宁府为保名声,买通官府掩盖了死因。尚荣进一步推想,秦可卿可能长期遭公公贾珍侵犯,才走上绝路。侍女瑞珠撞柱而死,也可能因为撞见此事,害怕遭人灭口。贾雨村没有否认掩盖死因,却说权贵犯法难以追究,还以自己放过薛蟠的案子为例,劝尚荣即使园中出事,也别追查到底。尚荣不肯接受,接到园中急报。
海棠诗社成立当晚,宝玉在大观园设赏花宴,请宁、荣二府亲眷游园,听社员吟诗。黛玉与宝玉情投意合,却担心众人更信宝钗的金锁与宝玉的通灵玉相配,锁上刻着“不离不弃,芳龄永寄”,玉上刻着“莫失莫忘、仙寿恒昌”,由此传出“金玉姻缘”。宝玉心里认定的却是与黛玉的“木石姻缘”。轮到迎春吟诗时,众人才发现她不在。她性情寡言,席间何时离开,竟无人留意。黛玉和宝钗忽然指向湖对面的小亭,只见迎春靠柱坐着,暗处伸出一双手掐住她的脖子,又把她拖走,亭边的灯笼接连熄灭。众人绕湖赶去,只在亭旁树丛深处的浅泉中找到她的遗体。宝玉见她颈有勒痕,衣服未乱,口鼻也没有溺水迹象,认为她先被扼死,后被抛入水中。他又从湿衣襟上拈起一片园中并未种植的白海棠花瓣。迎春的未婚夫孙绍祖醉醺醺地赶来,态度令宝玉厌恶。不久,一片同样的干花瓣飘落尚荣肩头。园门已封,围墙有人看守,凶手似乎无法逃走。孙绍祖据说案发时在荣府,之后又拒绝问话,尚荣仍不能认定他是凶手。便笺上“众目睽睽之下死去”的话仿佛应验了。
迎春出殡,贾家对外称她暴病而亡。操持丧事的王熙凤说可能在水月庵过夜,庵中弟子智能便备好房间。黄昏,智能看见熙凤与平儿进屋,又见平儿独自出来。天黑后,她还在院中碰见过一个以为是平儿的人。入夜,房里亮着灯,门却锁着,任她敲喊也无人应答。宝玉带黛玉、宝钗等人前去查看,看见窗上闪过一个巨大的怪影,屋里的灯随即熄灭。开门后,屋中只剩被捆住的平儿。她说有人袭击了她和熙凤,熙凤已不见踪影。众人又看见熙凤当天穿的上衣发着光,在高空飘远。
府里报来熙凤遇害的消息。尚荣赶回荣府,在她住处的高墙院中见到遗体。致命伤在后脑,是钝器所致,院内还散着摔碎的洋油灯。鸳鸯说,她在西便门外听见惨叫和碎物声,又从门缝看见火光,便拉开外侧门闩进院。彩云、玉钏儿也从东便门听到和看到同样的动静,开门进去,两处便门内侧都未上闩。南边正门只有内闩,家仆赶到时仍闩着,北边后门内外两侧都有闩。若这些证言属实,发出惨叫后凶手似乎无门可出,熙凤也不知如何从水月庵回到府中。宝玉说,或许是那个黑影带她飞过夜空,再将她抛进院里。
尚荣应宝玉之邀正式入园。路上,他追过一个酷似宝玉的背影,转过墙角却不见了,又在另一边遇见宝玉。他向宝玉坦言,迎春案里凶手消失,熙凤案里的密室与飞天景象,都应是人为安排,却想不通安排这些怪事的目的。宝玉坦白,曾调笑母亲的丫鬟金钏儿,王夫人听见后打骂她,将她逐出府,金钏儿不堪羞辱,投井而亡。尚荣认为宝玉没有直接杀她,宝玉却难以释怀。他又提起金钏儿的妹妹玉钏儿,以及与贾环亲近的彩云,觉得她们或许怨恨自己。谈到便笺,宝玉提出多种可能,或许有人看过旧诗,照着诗句布置罪案。园中女子都盼尚荣抓住凶手。湘云住进宝钗的蘅芜院后,尚荣想起诗社成立时迎春的座位就空着,打算私下问湘云迎春究竟何时失踪,却一直未能开口。
贾政升官,即将外任,宝玉在大观楼设宴唱戏为他庆贺。尚荣写信约湘云询问迎春案。湘云回想,初到秋爽斋参加海棠诗社时,迎春的座位空着。那晚宴会开场时,她也没见到迎春,却不能确定迎春后来是否到场。信末嘱她阅后即焚,她身边没有火,便将信撕碎。她在假山旁拾芍药花瓣,准备做枕。宾客陆续经过花丛赴宴,谁也没注意到那里有人。开戏后仍不见湘云,香菱奉宝钗之命去找,回来报告她已死去。宝玉与贾政赶到,只见湘云枕着花瓣,仿佛睡着了。验尸官在她锁骨上方发现针孔,医生毕知庵判断,她被涂有乌头毒的尖器刺中身亡,现场却找不到凶器。宝玉提出,毒针系上细线,射中人后便可拉回。尚荣在花瓣间找到自己那封信的碎片,怀疑凶手看见信,为阻止湘云谈迎春案而杀人。调查得知,开戏后离开大观楼的只有香菱、宝玉、贾政。
贾雨村逮捕香菱,声称她可能杀死湘云,假装发现遗体。尚荣指出她没有杀人动机,又揭露香菱原名甄英莲,是雨村昔日恩人甄士隐被拐走的女儿。雨村审理薛蟠打死冯渊一案时,明知她的身份,仍因“护官符”徇私放过薛蟠。雨村反过来臆测香菱因身世生恨,甚至用妖术行凶。尚荣将这些话告诉宝玉,宝玉托人向雨村施压,要求放人。他还提醒尚荣撇开那些离奇景象,重视几名死者的遗体本身。
官差奉命用小轿送香菱回府,途中前后相撞,停轿后才发现轿里空无一人。宝玉邀雨村入园受谢,说香菱已回到大观园。众人在凸碧山庄听见女子惨叫,从墙上的小洞看见香菱坐在一间房里,雨村也认出了她。宝玉与雨村撞开紧闭的房门,房中灯还亮着,却没有人,只有一股脂粉味。尚荣检查小屋,见门闩确实从内侧插上,墙洞又小得无法容人出入。不久,远郊乱葬岗发现一具略有腐败的遗体,宝玉凭眉心胭脂痣确认死者是香菱。宝玉与尚荣都判断她只死了一两天,应是在轿中失踪后遇害。报案者见过几名男子从乱葬岗跑开,尚荣猜他们因被撞见,没来得及埋尸。
贾府为安慰贾母,在大观园设宴。此前贾赦看中石呆子祖传的二十把古扇,石呆子不肯卖,贾雨村便将他下狱,替贾赦夺得扇子。乡下来的刘姥姥凭与王夫人的远亲关系入府,也被请到席上。她想用木碗喝酒,鸳鸯说木碗十只一套,宝玉便让她和晴雯去取。刘姥姥酒后在园中迷路,走进一处陈设精美的屋子。她先把画中人当成真人,又把镜中的自己当成别人,镜后卧房的床上还躺着一个姑娘。袭人将她叫醒,嘱她若有人问起,就说自己在假山后睡着了,又告诉她这里是潇湘馆。湖边忽然传来尖叫,刘姥姥听袭人劝告,匆匆离园。
鸳鸯、晴雯迟迟没有取碗回来。众人却在湖边看见一个垂着头的“鸳鸯”,抱住小女伶龄官,像僵尸般把她往水里拖。妙玉喝止后,龄官挣脱上岸,“鸳鸯”沉入湖底。宝玉打开扇子,扇面破了,其他女子打开扇子,也发现各自的扇子撕裂。宝玉又打开贾赦的扇子,那把也破了。众人想起晴雯曾为逗宝玉开心而撕扇,转而寻找她,结果在梨香院后院发现两具遗体。鸳鸯颈上有绳痕,晴雯头部被钝器击伤,只有鸳鸯的衣服湿透。尚荣不信湖中出现的是亡魂,想问龄官当时究竟发生了什么,却被挡在她祈祷的拢翠庵外。
连番命案加上元春病危,贾母急于让宝玉成婚冲喜,府中倾向让他娶宝钗。尚荣担心婚礼会改变园中局面,决意在婚前查清命案。黛玉在假山后听傻大姐说,宝玉要娶的是宝钗,回潇湘馆后吐了血。袭人向贾母说明宝玉与黛玉彼此相爱,二人都以为会同对方成婚,贾母仍坚持宝玉与宝钗的“金玉姻缘”。婚礼当天,蒙着红盖头的新娘乘轿在府中绕了一圈,与宝玉拜堂,众人始终没见到她的脸。
婚前,尚荣进园作最后核证。他在屋檐下看见灯笼和皮影戏道具,又发现怡红院重新布置过。李纨告诉他,梨香院的十二名女伶已全部离开。尚荣怀疑女伶知晓命案秘密,被主谋遣散,更确信宝玉牵涉其中。他到了潇湘馆,听见屋内似有黛玉吟诗,敲门后,另一个声音反复说黛玉病卧,不能见客。奉命守在馆外的傻大姐说,没见黛玉出来,还隔窗看见“紫鹃”。尚荣据此认定黛玉仍在馆内,赶往婚房解释怪事。
宝玉认可尚荣对机关的破解,却说他在归凶上错了。长辈回来催着揭盖头,宝玉掀开,新娘竟是黛玉。宝钗与园中姐妹、丫鬟合力让她换衣上轿,与宝玉拜堂。黛玉和紫鹃离开潇湘馆时,留下黛玉养的鹦哥学她吟诗,代为答话。紫鹃原名也叫“鹦哥”,傻大姐隔窗看见鸟,误以为看见了紫鹃,尚荣便信了黛玉仍在馆内。
黛玉倒在宝玉怀中,匕首深插在她的嫁衣下。宝钗赶来说明,黛玉换好衣服,将要上轿时,薛蟠把蒙着盖头的她当成宝钗,从背后刺了一刀。薛蟠供称,他以为妹妹出嫁会带走薛家财产,见“宝钗”不答话,便怒而动刀。黛玉忍痛上轿拜堂,始终没有求救,因为一旦暴露身份,婚礼就会中止。匕首留在体内,宽大的红嫁衣也遮住了血迹。她最终死在宝玉怀里。尚荣懊悔自己只顾长谈推理,未察觉眼前的新娘已身受重伤。薛蟠被捕,薛家已无钱再替他买通官府。
孙绍祖因临阵脱逃而被斩首,贾赦、邢夫人、贾琏、赵姨娘、贾环也接连病倒,时常惊惧,病因不明。宫中随后传来元春病逝的急报。贾家失去元春的宫中庇护,锦衣卫查抄宁荣二府,贾珍、贾赦被夺爵发配。尚荣重访宝玉,承认误以为几起命案凶手是同一人。
本作以《红楼梦》的世界为舞台,将大观园这座华美却隐含欲望与衰败的人工乐园改造成连环杀人现场,既有古典中国贵族生活的绮丽氛围,也保留了本格推理的谜案趣味。幻想性和舞台感值得称赞,尤其是将不可能犯罪与诡计动机相结合,在结尾通过结构反转揭示真相,切合原典主题,余韵哀切而美丽。某些具体诡计在揭晓后不够惊人,部分设置略显粗糙,结尾的宝玉形象与原典脱节。