心灵终结3.3.6地图编辑器萌新教程第25篇:如何让AI造兵(二)——建立作战小队
2023-08-27 17:20:15
来源: 哔哩哔哩
上一篇我们介绍了如何利用AI触发来让AI从生产建筑中造兵。然而,在开启AI触发之后,AI造兵的频率只和ini中规定的攻击时间间隔有关,造兵的种类也是随机的。如果我们想要确切地控制“想让AI在什么时候造什么兵”,就需要使用触发结果4:建立作战小队。
一、建立作战小队
(资料图)
我们在教程第18篇中介绍过“建立作战小队”这个触发,它可以用地图上已有的可以被AI重组的单位建立作战小队。在触发编辑器中,对该触发结果的描述中说“如果所属方没有足够的特定单位来建立该小队,则会在数量足够时自动建立”。但实际上不仅如此,如果该所属方有条件生产特定单位,则会开始生产,直到有足够数量的单位。因此,我们可以用“建立作战小队”来让AI造兵。上面所讲的“条件”包括:
1、有钱,有相应的生产建筑;
2、所属方的科技等级大于等于生产该兵种所需要的科技等级;
3、不受Owner、RequiredHouses和ForbiddenHouses两条的限制(详见教程第15、16篇)。
例:在以下示例中,玩家为美国,AI为苏俄,AI生产建筑齐全,有足够的钱,科技等级为10,初始地图上没有任何苏俄的步兵和载具。
我们建立以下四个作战小队:所属方均为苏俄。
作战小队1:5动员兵+5防空步兵,巡逻至路径点0-攻击。
作战小队2:3犀牛+2猛虎,巡逻至路径点1-攻击。
作战小队3:1基洛夫,巡逻至路径点2-攻击建筑。
作战小队4:2狐步,攻击载具。
然后,我们建立四个触发,类型均选为2(重复),条件均为流逝一定时间,结果均为“4:建立作战小队”,参数分别填作战小队1到4。
进入游戏之后,我们就可以发现AI每隔一段时间就会开始造兵攻击玩家。例如,如果我们将作战小队2对应的触发条件设置为流逝时间120秒,那么AI就会每隔120秒造3个犀牛+2个猛虎来攻击玩家。
二、注意事项
1、本篇内容与上一篇讲的AI触发无关,即使用“建立作战小队”让AI造兵不需要在“AI触发”中编辑任何内容,也不需要开启“AI触发开始”“开始生产”“开始创建作战小队”等触发。
2、使用“建立作战小队”让AI造兵,不需要玩家和AI之间有“仇恨”,这一点与AI触发不同。
3、执行“建立作战小队”这一触发之后,AI才会开始造兵,这距离AI真正派兵来攻打玩家还需要一定时间。
4、与AI触发类似,使用“建立作战小队”让AI造兵时,AI不受科技树(即Prerequisite参数值)的限制,但必须满足:AI所属方科技等级大于生产相应单位所需的TechLevel,以及不受Owner、RequiredHouses和ForbiddenHouses的影响。(详见教程第15、16篇)。
5、与AI触发类似,放在地图上的兵默认不能进行AI重组。因此如果一定要在有基地驻守部队的同时让AI造兵,要么保证驻守基地的兵种不被包含在AI需要生产的兵种当中,要么给基地驻守部队重新设置一个所属方。
6、如果要修改某一所属方的建造速度(可以是玩家或者AI),可以在ini的相应所属方的小节(如[Chinese],注意不是[Chinese House])添加或修改以下代码:
[Chinese]
BuildTimeBuildingsMult:除BuildCat=Combat之外所有建筑的建造时间乘以此倍率,这一类建筑通常是建造栏第一页的生产与科技建筑。
BuildTimeDefensesMult:所有BuildCat=Combat的建筑的建造时间乘以此倍率,这一类建筑通常是建造栏第二页的防御建筑。
BuildTimeInfantryMult:所有步兵生产时间乘以此倍率。
BuildTimeVehiclesMult:所有载具(包括船、直升机)的生产时间乘以此倍率。
BuildTimeAircraftMult:所有由机场生产的飞机生产时间乘以此倍率。
除此之外,对于某一类特定的建筑或兵种,如犀牛坦克[HTNK],还有以下一条代码:
[HTNK]
BuildTimeMultiplier:所有所属方生产此兵种的时间乘以此倍率。
这些参数的默认值都是,如果要加快生产速度,要将其设置为大于0小于1的一个值,越小建造越快(但建造时间应该有一个下限),例如改为则表示建造速度为原来的2倍。
我们举一个实际的例子来说明本篇内容的应用:
在《守护》第12关:天启降临当中,某一新建所属方BaseAlliedE,在终结难度下,每隔14分钟(840秒)会生产3辆新型长剑毁灭机甲(SHINBOT)来攻击玩家。
首先我们要让该AI所属方能造新型长剑毁灭机甲。该单位是战役专属单位,在中没有Owner、Prerequisite、RequiredHouses、ForbiddenHouses等参数。
关于Owner参数,我们在教程第16篇中说过,它的作用不明,可以随便写一个阵营的名称,但如果没有它就不能正常建造该单位,所以在此我们在内置ini中新增Owner这一条:
Owner=Europeans,UnitedStates,Pacific
另外,我们将Prerequisite设为盟军重工GAWEAP,同时为了防止玩家所属方占领盟军重工后生产该单位,再加上RequiredHouses=BaseAlliedE(即为新建所属方名称,本关中只有该所属方可以生产该单位)。
另外,中新型长剑毁灭机甲的TechLevel是11,在内置ini中我们改成10(AI所属方的科技等级也是10);除此之外,中关于新型长剑毁灭机甲还有一条意义不明的BuildTimeMultiplier=121,即生产该单位的时间延长至121倍,在内置ini中我们改成。总之,对于新型长剑毁灭机甲,我们在内置ini中写了以下内容:
[SHINBOT]Owner=Europeans,UnitedStates,PacificTechLevel=10Prerequisite=GAWEAPRequiredHouses=BaseAlliedEBuildTimeMultiplier=
然后,我们只需要创建一个作战小队:特遣部队为3个新型长剑毁灭机甲,动作脚本为攻击,所属方为BaseAlliedE,然后新建一个触发,类型为重复,条件为流逝时间840秒,结果为“4:建立作战小队”即可。
[责任编辑:cqsh]
网罗天下