其实,洪武年间的火器最初是由中央政府专门负责制造的,那时制造火器的机构先后有宝源局、军器局、兵仗局以及鞍辔局,同时还禁止制造火器技术的外传以及贩卖制造火药的原料,后来因为边陲未靖,战乱还时有发生,所以因时导势,允许一些边镇自行制造。
从朱元璋的指示中可以看出,云南的明军,在某些军事据点布防时,动用了数以千计的火铳,这也是前无古人的创举。
1386年(洪武十九年),明军与思伦发在云南景东地区爆发了冲突,并逐渐升级为大规模的激战。1388年(洪武二十一年)正月,思伦发又开始了蓄谋已久的进攻,他的军队来到摩沙勒安营扎寨。沐英指挥命令宁正率部前往应战获胜,斩首1500人。
思伦发吃了亏,不肯就此罢休,在3月份重新进犯,亲自带领号称“30万”的大军发动了规模宏大的进攻。边陲的军事要地定边(今云南南涧)告急,沐英反应迅速,带着3万余骑兵从云南府(今云南昆明)出发,日夜兼程,经过15天的强行军,到达前线,与思伦发对峙。战争迫在眉睫,硝烟味越来越浓。
沐英的骑兵装备了大量火器,主要是手铳与神机箭,不过,大型火炮就比较少,原因是骑兵在强行军时不方便携带。而思伦发的军队虽然没有火器,却有100多只大象配合作战。
战斗开始了,明将都督冯诚以300骑兵出阵挑战,思伦发则以1万人蜂拥而来应战,前面还有30只大象正阔步向前迈进。
明军当然不会被大象吓倒,他们过去在成都有过与大象作战的经验,对付这种庞然大物是胸有成竹的。云南前卫指挥张因等50余名骑兵,在打头阵时连发弓箭,射中一只大象的左膝及胁部。乘这只大象负伤倒地之机杀死了骑在象背上的敌人,并一鼓作气,歼敌百余人,捉获一只大象而还。
事实证明,思伦发的大象战斗力并不强,可是,两军主力在第二天正式决战时沭英仍然不敢轻敌,他将阵前的将士分为三个行列,每个行列都配备着火铳、神机箭,等到思伦发军队卷土重来时,首先由第一行发射,当第一行射击完毕,则转身退到第三行之后,重新装填弹药及箭,作好再次射击的准备;同时,第二行立即前进到原先第一行的射击位置上,继续射击。以此类推,便可以达到连续射击、用火力压制对手的目的,说白了,这其实就是叠阵。叠阵是我国古代战争常用的阵,一贯以来都是用弓弩排列成行进行轮番射击。而朱元璋在鄱阳湖之战已经使用过类似的战术,不过,那时候是弓弩与枪炮等冷、热兵器混合作战,而现在已经发展到全部动用火器作战了。