西庇阿将新迦太基城攻破后不久,一直等着迦太基人来报复,可是却迟迟没有等来迦太基人的进攻。随着时间一天天过去,他开始感到困惑和不安。为什么迦太基人没有来报仇呢?难道他们害怕与强大的罗马军队对抗吗?还是说他们正在策划一场更大规模的阴谋?这些问题困扰着西庇阿,让他无法安心入睡。
他突然意识到一种可能,那就是迦太基在西班牙的军队可能在酝酿一次大决战。如今这三股势力彼此互不统属,西庇阿必须要趁着它们合为一股之前,将他们各个击破。于是西庇阿决定主动出击。
说干就干,西庇阿命令自己的副将莱伊利乌斯率领海军舰队袭扰迦太基在西班牙南部的沿海,意图转移迦太基军队的注意力。而自己则率领主力部队悄悄深入西班牙内陆地区,目标是卡斯隆塔的哈斯德鲁巴。
哈斯德鲁巴是汉尼拔的弟弟,他虽然没有汉尼拔那样的军事指挥天赋,但是生性沉稳,也算是一员难得的猛将。他在卡斯隆塔的军队,驻扎在平原前的山丘旁,其营寨的左右均与山丘相连,后方有一条河流,这样的天然屏障,让西庇阿的军队几乎无从下手。
阿斯德鲁巴发现西庇阿的军队后并无意与之单独决战,而是通知其他两位统帅一起合为罗马军队。
西庇阿知道时不我待,断不可能坐等三支敌军汇合,于是他派新加入的西班牙盟军到哈斯德鲁巴阵前挑衅,试图诱使迦太基军队出阵。可哈斯德鲁巴对西班牙士兵杂乱的阵型和粗鄙的脏话毫不在意,依旧坚守在营地里。在反复试探之后,西庇阿决定冒险,他特意挑选出数千精锐之师,让他们从两侧的山脊击溃敌人居高临下的防御。
西庇阿就是要通过强攻,一举拿下哈斯德鲁巴两翼的高地。为此,西庇阿将罗马重步兵全部布置到两翼,令其不惜一切代价夺取迦太基的阵地,轻步兵和在骑兵则被他部署在中央,用标枪和战马牵制可能出营支援的迦太基人。
起初哈斯德鲁巴并未行动,他看到西庇阿意图决战后,便严令士兵不得擅自出阵,违令者斩。因为他相信西庇阿的目的就是引他出营决战,山脊上的两翼士兵足以击退罗马人的佯攻,所以只打算静观其变。
然而,战局很快就出乎他的意料,英勇的罗马军团不顾一切艰险攀登上山,强悍的战斗力杀得迦太基两翼节节败退,看起来两翼的罗马军队似乎不是佯攻,眼看山脊就要失守了。
哈斯德鲁巴终于坐不住了,他立即召集营地的军队,害怕继续坐等下去,两翼高地便会被罗马人占领。到时攻下高地的罗马军团会三面包围自己,而身后的河流又挡住了唯一的退路,如此便有全军覆灭的危险。
哈斯德鲁巴气得七窍生烟,他知道自己必须采取行动了。他愤怒地挥挥手,下达了命令:“全军出营!”他希望能够尽快增援山坡上的军队,挽回局势。随着他的命令,迦太基人的营地沸腾起来,士兵们匆忙地拿起武器,整队准备出击。