姚萇的军队在天亮之前完成了合围。
沈渡站在城楼垛口后面,看著城外的羌人军队在晨曦中缓缓展开。三万人分成三个方阵——西门一个,北门一个,南门一个。东门外面是驪山,山道狭窄不利於大军展开,姚萇只派了少量骑兵监视。围三缺一,这是標准的攻城布阵,给守军留一条看似能逃生的路,实际上是让他们在溃逃时自相践踏。三面合围加一面伏兵,攻心为上。
羌人军队的装备比沈渡预想的要好。前排步卒扛著从秦军武库里抢来的大盾,盾面上还残留著前秦的黑色漆纹。后排弓箭手背著满满的箭壶——那些箭壶也是秦军的,箭头是三棱铁鏃,破甲能力不弱。更远处还有几辆攻城车正在组装,车身用的是从渭北林场砍来的新木,轮子还没沾过泥。姚萇准备这场攻城不是临时起意,他至少准备了很久。
城墙上守军们的脸色在晨光中显得格外难看。有人在数城外的旗帜,数到一半就不数了——太多了。老魏站在沈渡旁边,把长矛往城砖上一顿,骂了一句什么,然后开始往垛口后面堆沙袋。他没有问怎么办,已经过了问怎么办的阶段了。
沈渡沿著城墙走了一圈。东段的女墙在几天前的雪夜里塌了一角,老魏带人用沙袋和碎砖临时填上了,但填得不结实,扛不住衝车撞。西段的弩机有三架还能用,但弩箭只剩不到一百支。北段城墙上守军最密集,但也是士气最差的一段,因为城外的羌人方阵正好正对著北门。他在北段城墙上多停了一会儿,把铁矛杆往城砖上一顿,然后转过身对著所有人说:“把火油搬到北门上来。不用省——第一波就打疼他。”
他的话不多,但每个字都让守军的手稳了一些。他们已经在这道城墙上守了一段日子,看著城外鲜卑骑兵的帐篷一天比一天多,看著羌人斥候在土樑上来回晃悠。恐惧这东西,悬在头顶的时候最可怕,等它真正落下来的那一刻反而没那么怕了。至少现在知道敌人要打哪了。
城外羌人方阵中响起了號角。不是衝锋號,是劝降號。號声沉闷而悠长,三长两短,標准的劝降信號。號声落下之后,一匹快马从羌人方阵中驰出,马上骑手举著一面白旗——不是投降的白旗,是使者的白旗。骑手策马跑到城墙下,勒住马,仰头朝城楼上喊话。他的声音洪亮而清晰,每一个字都让城楼上的守军听得清清楚楚:“姚將军有令——只诛暴虐,不杀无辜!凡愿弃暗投明者,城门大开,一概免死!若执迷不悟,城破之日,玉石俱焚!”
城墙上静了一瞬。沈渡感觉到身边几个士卒的呼吸在那一刻同时屏住了。他没有动,只是从垛口上往下看著那个使者。他的左手按在垛口的城砖上,右手攥著铁矛杆,矛杆底部在城砖上轻轻转了一下。然后他转过身,对身后的老魏说了一句话,声音不大,但极稳。
“盾牌。”
老魏把一面盾牌递给他。沈渡把盾牌靠在垛口內侧,然后拔出腰间的短刀——这把刀还是在彭城废墟里捡的那把,刀刃有几个豁口,刀柄上的麻绳也鬆了,但他一直没换。他把刀握在手里掂了掂,然后对老魏说:“让所有人趴下。”
“趴下?”老魏愣了一下。
“趴下。”
老魏转身朝城墙上吼道:“都趴下!全部趴下!”守军们虽然不明所以,但已经习惯了服从沈渡的命令,纷纷蹲下或趴倒在垛口后面。
沈渡自己也在垛口后面蹲下来,把盾牌斜靠在垛口上,只留一条缝隙观察城下的使者。他右手握著短刀,刀刃贴著垛口內侧的砖面,一动不动的。他同时在北段城墙的几个关键垛口后也安排了弓箭手隱蔽就位。城下的使者等了片刻,见城墙上没有回应,以为守军正在犹豫,便催马又往前走了几步,声音更大了。
“姚將军宽仁,只追究苻坚一人之罪,余者不问!诸位若是识时务——”
弩机的扳机被扣响了。弩箭从隱蔽的垛口后面射出去,箭矢擦著使者的头盔飞过去,把他头盔上的红缨钉飞了。使者惊得猛拉韁绳,战马前蹄扬起,他在马背上晃了一下差点摔下来。他显然没料到城墙上会有人放冷箭,仓促拨转马头,狼狈地往本方阵列里退去。
沈渡从垛口后面站起来,把短刀插回腰间,拍了拍手上的灰。老魏也从沙袋后面站起来,看著使者绝尘而去的背影,嘴角抽了一下。城墙上响起一阵低沉的笑声——不是那种轻鬆的笑,是一种压抑了很久之后的发泄。沈渡没有跟著笑。他在仔细观察使者退回去的方向——姚萇的主阵位於北门外那片高地上,帅旗下一群骑马的將领正在对著城墙指指点点。距离太远看不清脸,但他大概能认出姚萇的身形。
城外的號角再次响起,这一次不是劝降號,是衝锋號。
羌人的弓箭手率先压上来。他们排成三排横队,每排大约三百人,从北门外的缓坡上往城墙推进。第一排进入射程之后齐刷刷蹲下,第二排搭箭上弦,第三排预备。三排轮射的节奏极稳,箭矢像雨点一样泼上城头,钉在垛口上、城砖上、沙袋上,发出密集的闷响。守军缩在垛口后面不敢探头。羌人箭矢的箭头是三棱铁鏃,钉进沙袋之后拔都拔不出来。
沈渡蹲在垛口后面,把盾牌举过头顶。箭矢打在盾面上嘭嘭作响,震得他的手腕发麻。他透过盾牌和垛口之间的缝隙往外看,羌人的弓箭手正在压制城头火力,他们的步卒扛著云梯从弓箭手身后涌上来,数量至少三千。
“火油!”沈渡吼道。北段城墙上的守军把几口大铁锅从城楼里推出来,铁锅下面是临时砌的灶台,灶膛里的柴火烧得正旺,锅里的火油已经烧得滚沸冒泡。两个士卒用湿布垫著手,抬起铁锅往垛口外侧倾倒。滚烫的火油从城墙上泼下去,浇在羌人衝锋的队列里,惨叫声在城墙下方炸开。被火油浇中的人在地上翻滚著,皮肉被滚油烫得瞬间鼓起巨大的水泡然后破裂,焦臭的气味混著油烟升腾上来。跟在后面的羌人步卒被眼前的惨状嚇得缓了一拍——只缓了这一拍,城墙上的弓箭手趁机从垛口后面探出身子,把搭好的火箭射向云梯。火箭钉进被火油浸透的梯身上,云梯瞬间烧成了火梯。梯子上的羌人步卒浑身是火地从半空中坠落,有的砸在同伴身上,有的摔在冻硬的泥地上抽搐了两下就不动了。
第一波衝锋被打退了。但羌人的第二波紧跟著就推了上来,这次他们学乖了,把云梯分散开架设,中间隔开数丈距离,让城墙上的火油和火箭没法集中泼射。同时他们的弓箭手加强了压制密度,箭矢像暴雨一样泼上城头,守军连探头的间隙都被压缩到了极限。沈渡看到了这一幕——几架云梯同时搭上垛口,羌人步卒口衔弯刀手脚並用地往上爬,登墙速度极快。
他把盾牌交给老魏,从垛口后面站起来,捡起一根断弩臂,对著垛口外墙架稳了支棍。他在交趾见过类似的攻城梯队,人数多、梯子分散的时候,火油不够浇每一架梯子。得改变战术——对人多梯多的衝击,只能用火力製造隔离区,打散进攻节奏。
“集中火油,別浇人,浇他们梯子之间的地面!弩手盯紧正面往上爬的人!”他沿著北段城墙迅速调整了火油的泼洒方向。滚油从几处垛口被分別往下浇,在密集的云梯缝隙之间烧出一条条火带,浓烟把整段外墙面都笼罩在呛人的黑雾中。羌人的弓箭手被烟雾挡住视线,压制精度骤降。
战斗从清晨打到正午,从正午打到太阳偏西。羌人连续发动了数次衝锋,每次被打退之后换下伤亡较重的部曲又重新组织下一波。城墙上守军的箭矢已经快用光了。老魏带人把阵亡敌兵身上拔出来的箭矢重新收集起来,很多箭杆已经断了或者箭头歪了,但能用的还有一部分。火油也只剩最后的存量,周敬让人把伤兵营里的灯油全倒出来凑了满满一锅,这是最后的家底。沈渡的左腿旧伤在持续大半天的激战中已经完全站不住了,他靠在垛口上,用铁矛杆撑著身体,嘴唇乾裂发白,但眼睛还是和早晨一样亮。
就在这时候,南门方向传来一声巨响——不是火油爆炸,是木头和铁件碎裂的声音。攻城锤。沈渡猛地转过头,一个传令兵从南面跌跌撞撞地跑过来,脸上全是黑灰。“沈爷!南门——攻城锤撞门了!”
“老魏!守住北门!”沈渡拄著铁矛杆往南门方向跑。他的左腿每跑一步都在疼,跑几步就跛一步,但他没有停。老魏在身后还在朝垛口下扔擂石,周敬正在给一个被箭射穿肩膀的士卒拔箭鏃,阿木抱著最后一捆箭矢往城墙上搬。所有人都在忙,没有人注意到沈渡离开。
南门的战斗比北门更惨烈。羌人的攻城锤是一根包了铁头的整根圆木,用铁链吊在四轮车架上,由几十个步卒推著,已经撞开了南门的外层门板。內侧的千斤闸被守军放下来了,铁闸落在门洞里震得地面发颤,暂时挡住了攻城锤的衝击。但千斤闸的铁链被撞得嘎嘎作响,有几节链环已经开始变形。守南门的校尉是一个花白头髮的氐人老兵,正带著人用沙袋和碎石往门洞內侧堆第二道防线。
沈渡走到他旁边蹲下来检查千斤闸的状况。铁闸底部有一处锈蚀的裂缝,攻城锤的撞击正在不断扩大这道裂缝,铁锈和碎铁屑隨著每次撞击簌簌往下掉。“光堆沙袋没用。”沈渡站起来对校尉说,“把门洞里的弩机拆下来,架到门洞內侧两侧墙上。攻城锤再撞两下就会退回去换人,趁那个间隙把弩箭全部打进推车的人群里。另外去城楼上把最后两锅火油抬到门洞正上方——如果攻城锤衝进门洞,从上面往下倒。听见没有?”校尉连声应是,转头去喊人搬火油。
沈渡站起来检查了垛口內侧架设的两架弩机。这种蹶张弩是老式秦军装备,射程不远但近距离穿透力极强,弩箭可以贯穿两层皮甲,正是对付密集推车队的利器。羌人的攻城锤在门外调整了角度,重新推进来,铁头撞上千斤闸发出震耳欲聋的巨响。千斤闸的裂缝从底部往上延伸了数寸,但还在撑著。攻城锤退后再次调整角度准备第三次撞击时,沈渡下令弩机同时发射,弩箭从门洞內侧的暗孔射出去钉进推车步卒的队列里,冲在最前面的几个羌人步卒被弩箭穿胸钉翻在地,推车的队伍顿时乱了阵脚。紧跟著,垛口上方的守军把火油锅倾斜,滚烫的油从上方浇向攻城锤的木架和推车队伍,城门外再次腾起一片惨叫声。
羌人的攻势在南门被暂时遏制住了。但攻城锤本身並没有被摧毁,只是暂时退了回去。
天色暗下来的时候,羌人收兵了。城外的羌人方阵缓缓退后,留下了城墙上下一片狼藉。护城河边的泥地被踩成了翻浆的烂泥,城墙根下东倒西歪地躺著烧焦的云梯残骸和来不及拖走的尸体。空气里瀰漫著火油的焦臭和血腥味,混在一起让人闻了想吐。
沈渡拄著铁矛杆走下城墙。老魏还活著,坐在垛口下面用一块破布擦长矛,脸上被火油熏得黑一道白一道,看见沈渡下来就站起来,张嘴想说什么又没说出口。阿木也还活著,正蹲在墙根下把散落一地的箭矢一根一根捡起来分类放好。他膝盖上放著一本破破烂烂的帐册——是周敬给他的,让他把城墙上的伤亡和耗损记下来。他识字不多,很多字写错了就用画代替,但他写得极其认真。
周敬从伤兵营走出来,把一卷新绷带塞进怀里。他看了看沈渡的脸色,又看了看他的左腿,皱眉问:“用药了没有?”
“没顾上。”沈渡说。周敬把他拉到伤兵营角落里让他坐下,把他左腿的裤管捲起来看了看伤口,然后用捣碎的草药糊在膝盖上重新包扎了一遍。包扎的时候沈渡没有皱眉,只是靠在墙上闭了一会儿眼。但他脑海里一直迴荡著攻城锤撞击千斤闸的声音——今天他是靠弩机和火油险险守住了南门,明天呢?千斤闸上的裂缝已经扩散到了危险的程度,再撞一两次就会崩裂。修復千斤闸需要铁匠和至少一天的时间——这两样他都没有。