粮草车队还没到,我等不了了。第一座城的粮仓里那点粟米掺着麸皮和野菜,勉强撑了几天,士兵们虽然没人抱怨,但每天早上端起粥碗的时候,我都看到他们用筷子在碗里搅好几下才捞到几粒米。那种搅动的声音很轻,筷子碰着碗沿发出一圈又一圈细碎的声响,像是一个人对着一面空镜子反复确认自己还在。我站在伙房门口看了一会儿,心里像被什么东西揪着,转身回了营房。我是主将,别人可以不急,我不能不急。别人可以端着碗慢慢搅,等那几粒米浮上来再喝一口,但我不行——我站在那里看着他们喝粥的时候,看到的是整支队伍的精气神正在一点一点地往下掉。人能熬,士气熬不了,再等几天,不用敌人来打,这座城就先自己塌了。
偏殿会议结束之后,我回到自己那间临时设在府衙东厢的营房,把门关上了。门板是厚实的榆木,关上之后外面的光线被切断了大半,屋里暗下来,只剩下临街那扇窗漏进来的一窄条日光。窗台上落了一层灰,几只干瘪的蚊虫尸体嵌在灰里,不知道是什么时候死的。我坐到桌前,把桌面上的几张纸和地图卷推到一边,腾出一块平整的地方,然后打开了系统商城。光幕在面前铺展开来的时候,幽蓝色的荧光映亮了整面墙,把墙角那排空书架上的灰尘照出了一层灰白色的轮廓。界面弹出来的那一刻,我忽然觉得有点讽刺——在现实世界里,我逛超市从来不看粮油区,我妈让我买袋大米我都嫌沉,嫌拎着累,嫌占了手不好拿别的东西,每次都磨蹭着不乐意去。现在却对着商城里的粮食分类,像个精打细算的账房先生一样反复比较着每一项兑换的性价比,每看一个数字脑子就转一圈,把那条线上的所有消耗全部算一遍。
白面粉,每吨几个积分;大米,每吨几个积分;蔬菜,每吨几个积分。商城页面上滚动过几排不同的粮食选项,每项的图标都画得简洁清晰,一袋面粉的图标下面标着价格,一筐青菜的图标旁边标着价格,一箱腌肉标着另一种价格。我的目光来回在这些数字之间跳着,手指悬在光幕上方没有落下去。我在心里快速算了一笔账:现在前线有一千五百名步兵和十名斥候,人吃马嚼的消耗按人头乘天数算出来的是一个不小的整数。每天消耗的粮食加上草料,至少需要一定量的主粮和蔬菜,主粮供给人,草料供给马,如果只补人粮不管草料,战马垮了斥候就废了,整支队伍的侦察能力就会倒退到只能靠双脚走路的水平。我从战马、士兵、辅兵、降兵四个层面分别算了每天的消耗,然后把这个数字乘以从今天到淮王城运粮队抵达所需的预估天数,得到一个总需求量,再把这个总需求量跟商城里的兑换单位对比了几遍,保证兑换量足够撑到补给线彻底稳定下来。兑换一批足够支撑一阵子的粮食,再加上现有的库存,应该能撑过这段最紧张的时间。
我没有犹豫太久,手指在数量栏里输入了几个数字:十吨白面粉,几十吨大米,几十吨新鲜蔬菜。输入完最后一个数字之后我扫了一眼总和,数字比我想象的要大一些,但还在可承受的范围内。积分从账户里划走的那一刻,商城界面弹出一条扣款确认提示,显示总共花了我四千五百积分。这个数字比我第一次兑换那批长枪兵时花的还要多出一截——那批长枪兵花掉的积分用来换了五千条命,这次花掉的积分换来的是一袋一袋的粮食,一堆一堆的蔬菜,是能让这些命继续撑下去的东西。我靠在椅背上看着光幕上显示的那些数字跳动了一下然后稳定下来,心里忽然就松了半口气。不是全松了,还剩半口悬着,但至少那半口松下来的时候,我觉得自己能坐直了。面粉、大米、蔬菜,这些都是实打实的粮食,是能让士兵们碗里的粥变稠、盘子里的菜变绿的东西。不是麸皮,不是野菜,不是掺了沙子的碎米,是白面粉、白大米、沾着露水的新鲜蔬菜。我站起来推开窗户,让空气流通进来,光幕上那行扣款确认的文字已经消失了,只剩下商城首页的默认界面安静地亮着,像一盏不灭的灯。
第二天一早,我在城中的临时仓库里看着那批粮食凭空出现在货架上。仓库是一座半地下的石砌房子,原来也是平阳城的老粮仓之一,虽然被燕军搬空烧过了,但石墙和地面都还算完好,屋顶也没漏。一袋袋白面粉码得整整齐齐,从地面一直垒到齐胸高,边缘贴着墙根排了一整排。大米装在粗麻袋里,比面粉袋略小一些,也是一摞一摞地叠放着,袋子外面印着商城的标记图案。新鲜蔬菜是成筐码放的,每只筐子都有半人高,里面塞满了绿油油的菘菜、紫红色的蔓菁、带根的萝卜,筐底的泥土还湿着,渗出一小片深色的水渍在地面上。空气里弥漫着一股粮食特有的干燥气息和蔬菜根茎上的泥土味,那两种味道混在一起钻进鼻腔里,带着一种丰足感,让人觉得踏实。
我让伙房把白面粉和蔬菜全部领走,蒸白面馒头,炖菜干肉汤。伙房设在府衙后院一溜低矮的土房里,几口大铁锅架在石砌的灶台上,柴火烧得很旺,火舌舔着锅底发出噼啪的爆裂声。面粉在大盆里加水揉成面团,揉面的汉子把袖子卷到肘弯以上,手掌按下去再翻上来,按下去再翻上来,面团在他的掌底渐渐变得光滑有弹性,案板上撒了一层面粉防粘,揉好的面团被揪成一个个均匀的剂子码在旁边的木盘上等着上笼。灶上的大锅里炖着的菜干肉汤咕嘟咕嘟地翻滚着,干菜是之前剩下的存货泡发开了,肉是有限的腊肉切成了薄片,在汤里煮出了一层薄薄的油花浮在表面,油脂的香气和干菜的陈香混在一起从锅盖的缝隙里钻出来,弥漫了半个后院。馒头蒸熟出笼的时候,白生生的热气从笼屉边上涌出来,一大片白雾升到屋檐下面散开,整个伙房都被那股醇厚的麦香灌满了。
那天中午,士兵们的碗里不再是稀得能照见人影的粟米粥,而是实打实的白面馒头和热腾腾的菜汤。馒头刚出笼不久还烫手,捧在手里要把馒头在两只手掌之间来回倒几下才能拿得住,白面的表面光滑紧实,掰开的时候里面松软的组织露出来,热气从缝隙里往上升。菜汤里捞得到菜叶子和肉片,虽然腊肉切得薄,但每一碗里都能捞到两三片,汤面上浮着淡黄色的油星。一个年轻的长枪兵咬下第一口馒头的时候,先是愣了一下,嚼了两下之后停了,低头看着手里那个白面团子看了好一会儿,然后他的喉咙动了一下,低头大口大口地把整个馒头塞进嘴里,腮帮子鼓得像只松鼠在囤过冬的坚果。他旁边坐着几个跟他同队的士兵也都端着碗安安静静地吃着,没有人说话,只有咀嚼和喝汤的声音此起彼伏地响着。伙房门口蹲着几个刚下哨的刀盾兵,他们把馒头掰成小块泡进汤里,等泡软了再舀起来吃,吃得很慢,像是怕吃太快了就没了一样。我站在院子门口远远地看着他们,没有走近,看了片刻之后转身回了营房。
吃完这顿饱饭,我把亲兵队长叫来。他站在我面前的时候嘴角还沾着一小粒馒头渣,他自己没注意到,我指了指自己的嘴角示意他擦掉,他低头用手背蹭了一下,把面粉渣蹭掉了,然后抬眼等我说话。我在桌面上摊开一张平阳城周边和北面第二座目标城池之间的地形草图,手指点着图上那条通往东北方向的丘陵路,让他清点出足够支撑下一场战斗的干粮。把新到的白面和蔬菜按照出征的人数和预计天数折算成定量,装在随军的布袋里,马背上驮一部分,士兵各自背一部分,确保途中不需要再另外找地方补充。他点了点头,领了命令转身走了。等他走出门口之后,我独自坐在营房里把今晚行动的细节从头到尾过了一遍。今晚夜袭第二座城。不能再等了,趁刚吃了一顿饱饭士气正旺,趁粮食充足后军的底气还在,趁着那座城里的守军还不知道我们已经把平阳拿下来了。
第二座城比第一座略大,在洪语言的地图上标注的名字叫安昌,位于平阳城东北方向大约两天路程的位置。洪语言的情报网早就把它的底细摸得清清楚楚:城墙比平阳高出一截,城外还有一道浅壕沟,但壕沟里大半已经干涸,填满了落叶和碎石,形同虚设。守军大约五百人,原本是燕国北境都督公孙珝麾下的一支偏师,内战爆发后这支偏师和其他许多边境部队一样,被调回国内的命令来了又停了,停了又没了,最后他们既没有接到明确的北上指令也没有接到南撤的指令,就这样被遗忘在了这个鸟不拉屎的边境小城。粮草断了快两个月,五百人挤在城里靠最后一点存粮撑着,每天只开两顿饭,每顿一碗稀粥就着盐巴。士气低迷到连城头上的火把都舍不得多点几根,晚上城墙上黑漆漆的,只有城门楼顶上挂着一盏半死不活的旧灯笼,光晕微弱得连城墙根都照不到。更关键的是,守军校尉和副尉之间有旧怨,据说两人当年在公孙珝帐下共事时就因为争功闹过矛盾,后来各自调防到了不同的驻地才算消停,内战爆发后两人被凑到一起守这座破城,断粮之后矛盾彻底激化,副尉当众骂过校尉无能,校尉气得拔刀,被旁边的亲信拉住了。从那以后两人各管各的,校尉带着他的人守南门和西门,副尉守北门和东门,几乎不再见面。守军内部已经出现了逃兵,前几天夜里有人从东城墙上用绳子溜下去跑了,副尉发现之后只是骂了一句就没有再追。
我的计划很简单:凌晨是人最困的时候,也是城防最松懈的时候。哨兵熬了一整夜到天亮前那段时间最撑不住,眼皮打架,反应变慢,城垛口后面的身影一动不动地靠在砖墙上。斥候已经提前潜入城内摸清了换岗时间,城墙上哪些位置有哨兵、间隔多久换一次、换岗的时候有没有空档,全部记在了纸上带回来。我的突击队趁夜色从城墙裂缝处摸进去,先控制城门,再控制粮仓和武库。整个过程和拿下第一座城的方案几乎一样,但这次我多带了一倍的突击人手,因为安昌的守军人数更多,如果控制城门的时候惊动了副尉那一路人,需要有人能在最短时间内把两路守军同时按住。一切都按照计划推进,斥候提前一天摸到了安昌城北门外,伏在干涸的壕沟底部盖着枯草观察了一整夜,把城墙上哨兵的巡逻规律踩得死死的。第二夜,月光半明半暗,云层流动的速度不快但恰好能让城墙上的视野时亮时暗。突击队在云遮月的时候翻墙,铁爪钩从城墙外侧抛上去扣住垛口,绳索拉直之后士兵踩着墙面上的裂缝凸起交替攀爬,甲片都提前用布条缠了减少碰撞声。翻过城墙之后从内侧的登城步道摸下去,先解决了城门洞里的两个哨兵,然后分两路包抄校尉和副尉的营房。
整个过程干净利落,和第一座城如出一辙。守军校尉被我从床上拖下来的时候,还在骂骂咧咧地说着梦话,翻了个身嘴里嘟囔着什么粮饷不发的抱怨,等他的后脑勺磕在地面上醒过来,看清面前站着的铁甲步兵时,整个人一下子就瘫在地上,嘴唇哆嗦着说不出一句整话来,两眼直愣愣地盯着我的胸甲上那枚鎏金兽吞,像是被那道暗金色的反光钉住了视线。副尉倒是硬气,听见外面有动静就翻身抓刀,从床上一跃而起之后光脚站在地上摆了个架势,刀尖朝前,嘴里喊着什么人。他冲了两步想往门口扑,被门口一名亲兵侧身闪过,枪杆从侧面横着扫过去,杆身砸在他的胫骨上,他腿一软往前栽,后脑勺又被另一名亲兵用枪柄敲了一下,整个人趴在地上昏了过去。前后不到一盏茶的工夫,两处营房的抵抗全部平息。
五百守军,俘获近四百人,其余的趁乱从东面城墙的缺口逃散了。那批逃出去的人不多,大概几十个,摸黑往东边跑了,我也没追,追也追不回来,他们跑远了反而省了我的粮。缴获的兵器堆了半个武库——刀剑弓弩矛戟都有,虽然多数旧了锈了但收拾一下还能用,里面的箭矢存量不少,弓弦虽然有些松了但换上新的还能拉。粮草虽然不多,搜出来的存粮拢共就那么几袋发霉的碎米和半缸盐,加上角落里几筐干透了的萝卜,但从风干程度来看已经是几周前的存货了,远远不够四百人的吃食。但这批粮食加上我刚从系统里兑换的那批白面和蔬菜,以及平阳城伙房分拨过来的一部分,足够两座城的驻军支撑到淮王城那边送粮过来了。我让后勤的人把粮草和兵器分开造册登记,入库封存,再把俘虏名单跟缴获清单并在一起,用亲兵送回平阳城存档。
天亮时,我把投降的燕国士兵集中到城中广场。安昌城的广场比平阳的略大一些,铺着不规整的青石块,地面坑坑洼洼的,缝隙里长着干枯的野草。近四百名降兵被亲兵押着蹲在广场正中央,双手抱头排成几排,铁甲长枪兵在广场四角站了岗,枪尖朝外封住了所有出口。我站在广场前方的石阶上,宣布淮王城接管此城,所有降兵愿意留下的编入城防队,每月领粮饷,家里分田免赋,不愿留下的发路费遣返,每人发三天的干粮和几枚铜钱往南走。我的话和之前在平阳城说的几乎一样,一个字都没改,只不过这次说的时候我心里更稳了一些,因为后面的粮仓里确实堆着够大家吃饱的东西了。降兵里有几个老兵带头跪下来表示愿降,他们的膝盖磕在不平整的青石地面上磕得很响,然后第二个、第三个、第四个人跟着往下跪,整片广场上近四百人陆陆续续地跪了下去,像一片被风吹倒的谷子地。
我站在城楼上,望着城外这片刚刚易手的陌生土地。安昌城北门外是一片开阔的缓坡地,坡上的野草已经枯黄了,在晨光里泛着一层干燥的金白色。再往北隐约能看到一条灰白色的土路贴着丘陵的脚蜿蜒延伸,路面上有车辙和马蹄印的痕迹,不知道是多久以前留下的。洪语言的斥候已经在前方探出去了,他们骑马沿着那条土路往北跑了大约半天的路程,在能够望见下一座城镇轮廓的位置勒住马观察了一阵,然后原路返回报信。我说不清下一座城距离这里还有多远,还要走多久才能把整个北缘的防线合拢,但我知道必须继续推进。两座城,近两千降兵,前线的兵力已经超过了我的预算,超出了我出发时预期的规模。但淮上平原北缘的防线还远没有合拢,还有更北边、更东边的城池空着,还有更长的缺口等着我们去填。我必须继续往北推进,但同时要确保每一座新拿下的城都有人守、有粮吃、有城墙可依。明天等淮王城那边的粮草车队一到,把平阳和安昌之间的物资缺口全部补齐之后,我就要继续向北挺进。那座更北的城还黑沉沉地蹲在地平线上等着我,我手里的锤子还没怎么抡起来过。我摸了摸腰间的锤柄,胶套上沾了些灰和汗水,被晨风一吹带着一点凉意贴在掌心里。