原来沼泽带上零星散布着一些小块的土地,楚军把路修到最近的地块上,然后一边始扩大它的面积,一边以此为基点修筑多条通向其它地面的道路。当临近敌方工事时,他们竟然把几个分开的地面连在一起了!
这时敌人才慌乱起来,他们感到巨大的威胁正在逼近,他们虽然不知道楚军具体的进攻计划,但正是这种不确定性使得他们惶恐不安。敌人也开始模仿楚军的样子筑路,想要和他们抢占距离自己较近的一块陆地。但是这种工程不是他们所擅长的,干了几天终于修出一条歪歪扭扭的土路,没踩过几次路就塌了。
楚军一边扩大土地面积,一边把木头拉上来建造投石机。敌人考虑到与其被动挨打不如主动出击。百濮的舟师于是在一个薄雾的黎明对敌军发动袭击。这正是楚军想要的结果,敌人的舰船防守有余而进攻不足,而且楚军从来没有放松过警戒,双方纠缠在一起时,任何理论上这样或那样的优势都消失了。
晨雾使得双方认不出方向,辨不清敌我,因此误伤和意外也是很多的。实际上战斗上午就结束了,敌人损失了大部分力量,只有少数船只得以逃脱。大雾一直持续到正午才散去,这时楚军才发现现场有多悲惨。
楚军的投石机也建造完毕,楚人发明了一种专门对付木质门墙的投掷物。他们制造了一种比拳头略大的细嘴球形陶罐,向里面灌满油脂,再用铅封口;他们把藤条或者麻绳在火油中浸透,然后象缠线团那样缠在陶罐上,用火把点燃后发射出去。这种火弹轻重适当,而且破坏力很大。
楚军在晚上铺设一条简易板道,把要塞和陆地之间的栈道破坏了,准备工作完成之后就开动了投石机。
敌人正因为新近遭受的失败而悲伤和惴惴不安,夜空中突然响起巨大的轰鸣声。燃烧的火流星从天而降,在深夜里显得特别恐怖,营寨马上就陷入一片火海。濮人以为是上天降罪来惩罚他们了,惊慌失措到处乱跑。而楚军非常善于在夜里制造混乱,他们把战鼓金铎敲得震天响,边敲边喊;一些快船挂着和其大小不成比例的灯笼迅速前进。
敌人完全被恐怖的景象吓倒了,栈桥上挤满了逃跑的人,很多人都被挤进泥潭。因为栈桥已经被破坏了,所以跑在前面的也未能幸免于难,他们就这样一个推一个地掉下去了。
楚军取得胜利后没有继续扩大战果,因为他们的目的就是通过这条水道。舰队随后进入了百濮腹地,敌人再无险可守。
楚军回到岸上行军,他们很高兴不用再晕船了,而濮人士兵则情愿呆在摇摆不定的船上。于是联军沿水、陆并行向前进发,数天后便抵达百濮的中心城市石津。
楚军用投石平台将石津的水上吊楼和悬门烧掉,敌人见大势已去就投降了。
子瑕把屠杀楚人的首要分子斩首,又把一些部落长老带回郢都供楚平王处置。平王对他们进行严厉的惩罚,但是又把百濮的赋税减轻到可有可无的程度。