心灵终结3.3.6地图编辑器萌新教程第14篇:战役中常用的ini修改

您所在的位置:网站首页 现实地图游戏改定位教程 心灵终结3.3.6地图编辑器萌新教程第14篇:战役中常用的ini修改

心灵终结3.3.6地图编辑器萌新教程第14篇:战役中常用的ini修改

2024-07-10 14:45| 来源: 网络整理| 查看: 265

上一篇中我们讲了ini文件的基本格式和地图内置ini的两种编辑方法。本篇我们来举例说明在战役制作中ini修改有哪些常见的应用。本篇中的ini修改均指的是修改地图内置ini.

例1:基本数值的修改

以自制战役《守护》第10关为例,本关中需要对沃尔科夫进行加强。在上一篇专栏中提到,在这一关中沃尔科夫的血量从600提升至1000,并且提升了回血速度。然后,我开了一把,结果沃尔科夫被打成了筛子……于是我一怒之下又对沃尔科夫进行了以下亿点加强(以下数据为休闲难度的数据,终结难度比这个弱一些,如何实现“让沃尔科夫在不同难度下拥有不同的ini”涉及新注册单位,以后再说):

[VOLKOV]

Strength=2600

SelfHealing.Rate=0.02

SelfHealing.Amount=12

这三条属性在上一篇已经讲过了。沃尔科夫的血量被增强至2600,回血速度是之前SelfHealing,Amount=4的三倍。另外,在[VOLKOV]小节中还可以找到Speed,Sight,Cost等基本数值,分别表示移动速度、视野、造价。

不过,作为一个兵种,最重要的属性之一当然是攻击伤害,如何增强攻击伤害呢?和兵种攻击有关的属性并不在这个兵种本身的小节中,而是在兵种所持有的“武器”小节中。

首先,我们在rulesmo.ini中找到VOLKOV小节下的这几个属性(这几个属性并不需要写在内置ini中):

[VOLKOV]

Primary=VolkovBolt

ElitePrimary=VolkovBoltE

Secondary=VolkovBomb

EliteSecondary=VolkovBombE

其中Primary和Secondary是“主武器”和“副武器”,是新兵级(无星)和老兵级(一星)单位使用的,而ElitePrimary和EliteSecondary则是精英级(三星)单位使用的主武器和副武器。沃尔科夫的主武器用于攻击步兵和载具,副武器用于攻击建筑。由此可见,单位升级三星之后使用的武器与升级前是不同的。因此,在对沃尔科夫的武器进行加强时,不要忘记对“精英级武器”也进行加强,否则可能会出现“升了三星反而变弱”的情况。不过,由于在本关中沃尔科夫一出场就是三星,所以我们只需要改精英级武器就可以了。

然后,我们在rulesmo.ini中搜索以下小节:

[VolkovBoltE]

[VolkovBombE]

这两个小节就是决定和沃尔科夫的两种攻击方式有关属性的小节了,下面我们在地图内置ini中作如下修改(以下展示数据为休闲难度):

[VolkovBoltE]

ROF=15

Range=12

Damage=180

[VolkovBombE]

ROF=30

Range=12

Damage=250

这三条属性是rulesmo.ini中本身就有的属性。ROF指的是“每两次开火之间的间隔”,这个值越小,射速越高;Range是射程,Damage是每发伤害。与原来的数据相比,精英主武器ROF从30降至15,射程从8升至12,伤害从60升至180;精英副武器ROF从50降至30,射程从8升至12,伤害从150升至250.

例2:其他属性的修改

一个单位或建筑的属性有很多种,且不同单位或建筑下面的键名也都是不完全相同的,在此不可能全部列出。大多数键名都可以根据其名称大致推测出其含义,或者也可以查阅ini词典。在此略举两例:

在《守护》第六关中,需要给建筑“德特里克堡实验室”(命运科技机库,CAVHNG)加上“不可被摧毁”的属性(否则这关就被炸了最后一关打什么),因此在内置ini中写:

[CAVHNG]

Immune=yes

加上此代码后,建筑免疫所有伤害。

在《守护》第八关中,玩家需要占领所有的火箭发射台。火箭发射台本来只是一个普通的平民建筑,因此需要加上“可以被占领”的代码:

[CASPAC]

Capturable=true

另外一些常见的表示“可被……的”以“-able”结尾的属性如下:

Repairable:可以用工程师修复

ClickRepairable:可以用扳手修复

Unsellable:不可被变卖

Spyable:可被间谍渗透

Trainable:可以升级

这些键名的参数值比较混乱,有的是yes/no,有的是true/false,或者两个都可以,在用的时候建议打开rulesmo.ini找一个照着写。

例3:支援技能与超级武器

支援技能和超级武器本质上是一样的。我们以“墨丘利卫星打击”MercurySpecial为例,常见修改涉及到的属性有以下4个:

[MercurySpecial]

Ispowered=true ;需要电力,在没电的情况下停止计时

RechargeTime=6 ;充能时间为6分钟

ShowTimer=no ;不在右下角显示倒计时

Money.Amount=-800 ;使用一次需要800块钱。像“工厂维护”GearChangeSpecial这样用一次加钱的就是Money.Amount=3000,免费的就是0.

另外,在没有代码词典的情况下,如何知道一个支援技能的代码是什么?首先你需要知道这个支援技能是被哪个建筑解锁的,先找这个建筑的代码,比如要找“工厂维护”的代码,首先要找“工业工厂”,而找建筑的代码可以借助地图编辑器,在地图上放一个此建筑,鼠标悬停到上面,就可以在左下角看到这个建筑的代码了(参考教程第6篇)。我们找到“工业工厂”的代码是NAINDP。然后打开rulesmo.ini,在这个建筑的小节中找SuperWeapon这个键名,对应的键值就是支援技能的代码。比如[NAINDP]小节里就有“SuperWeapon=GearChangeSpecial”,这就是“工厂维护”的代码。有时一个建筑可能有多个支援技能,根据英文字面意思应该是好区分的。

顺带一提:和支援技能、超级武器有关的常用触发结果有:33,34,132,133,134. 大家可以自行尝试这些触发的效果。不过,结果33和34这样的“为触发所属方添加支援技能”直到游戏结束是无法“撤销”的(或者说我还没有找到方法,如果大家有办法可以留言),比如说,你想在任务的第一阶段为玩家添加一次某支援技能,但如果玩家在第一阶段不用,那么在第二阶段就会消失;或者在任务的第一阶段为玩家重复添加某支援技能,第二阶段消失。如果有这样的需要,就不建议使用这两个触发,可以采用以下的办法:随便找一个中立建筑放在地图可见区域外面,比如一根旗杆,把这个支援技能绑上去,就是在这个建筑的ini小节中写SuperWeapon=xxx,然后当你要给玩家添加支援技能时,把这个中立建筑的所属方改成玩家所属。如果是添加一次的支援技能,可以使用触发条件75:触发所属方使用支援技能,结果只要使这个中立建筑不再归玩家所有即可,比如更改所属方。(当然,如果两个触发都选结果“14:更改所属方”,则需要将一个建筑关联到两个触发上,可能需要用到关联触发;为了尽量避免关联触发,可以在刚开始的时候给这个中立建筑设一个特定的所属方,然后把第一次“更改所属方”改成结果“36:全部更改所属”;或者取消支援技能时也不一定要用更改所属方,可以用结果“63:在某路径点造成100点伤害”来摧毁中立建筑。)如果要重复添加支援技能直到第二阶段,只需要当进入第二阶段时让这个中立建筑不再归玩家所有即可。

例4:单位或建筑头顶标记

在战役中经常可以看到一些标记,通常作为任务目标的提示。这些标记可以分为两类,一类是定点标记,这一类标记我们在教程第5篇中的例3已经讲过了;另一种就是在单位或建筑头上的标记,可以随着单位的移动而移动,例如官方战役“生存本能”中的五个原型机头顶都有一个“防御”标记。当然,由于建筑物不会移动,所以建筑物上面的标记既可以是第1类,也可以是第2类。

我们就以官方战役ep18-生存本能中的“巨像”DEVO为例,在单位头顶显示标记的方法是修改ini,具体方法如下:

[DEVO]

AttachEffect.Animation=DEFMARK

AttachEffect.Duration=60

第一个键名的字面意思是“附加效果的动画”,就是在头顶出现一个标记,键值为动画名称,种类很多,不过在这个例子中一般能用到的只有几种,比如DEFMARK为绿色盾牌,TARGETMARK为红色准星,DANGERMARK为骷颅头标志。具体的动画代码可以在触发结果:“41:播放动画”中的动画参数序号1858到1865中找到。实际上我们很熟悉的MCV头顶上有一个房子标记也是用这条属性实现的:在rulesmo.ini中随便找一个阵营的MCV,比如盟军基地车AMCV,下面就有一句AttachEffect.Animation=MCVMARK。第二个键名的字面意思是“附加效果的持续时间”,这句代码不能没有,否则单位头顶的动画无法显示,然而目前我还没有发现这句代码具体的作用,在“生存本能”这一关中键值写的是60,其他地方也有写-1的,并且我也没有发现写60的时候单位头顶的标记会在60秒或60分钟后消失(难不成单位是“小时”),大家感兴趣的话可以尝试改变这个键值,看看会不会有什么变化。

例5:通用设置的修改

这里的“通用设置”指的是rulesmo.ini中开头的“General”小节,这一小节并不是对某个单位属性的描述,而是规定了游戏中一些通用的设置。与这一小节有关的战役制作中的常见应用就是“不同难度下的开局金额”。

我们在教程第2篇中就讲了如何给玩家设置开局金额,不过在很多战役中,休闲、普通、终结难度下开局金额是不同的,这是在内置ini中写以下代码实现的:

[General]

CampaignMoneyDeltaEasy=10000 ;简单难度开局多10000块钱CampaignMoneyDeltaHard=-10000 ;终结难度开局少10000块钱

在“所属方”中设置的初始金额是普通难度的初始金额,比如说设成20000,那么加上上面的代码后,简单难度开局就是30000,终结难度就是10000.

另外,在《守护》第10关中也修改了General小节:

[General]

SpyPowerBlackout=4500DefaultMirageDisguises=TREE16,TREE17,TREE18,TREE19,TREE20,TREE21,TREE22,TREE23,TREE24,TREE25,TREE26,TREE27,TREE28

第一句代码指的是间谍渗透电厂后,停电时间为4500,在rulesmo.ini中这一数值是1350,1分30秒,在常规遭遇战中停电时间为90秒,那么在第10关战役中停电时间就是300秒(5分钟)。

第二句代码指的是幻影坦克伪装的地形对象。在rulesmo.ini中这一键值是TREE01到TREE08,大多数是城市树木,而本关为雪地,在绘制地形时树木以松树为主,也就是TREE16到TREE28,因此让幻影坦克伪装成上面这些类型的树更不容易被发现。

最后,当使用ini对单位或建筑进行修改时,受影响的是地图上所有该单位或建筑,因此它没有办法像“关联对象”那样精准到地图上的“哪个”单位。比如,如果说某一张地图中敌军100个普通美国大兵中混进去了一个三星美国大兵(“美国队长”),任务目标是杀死“美国队长”,那获胜条件用触发很好实现:选择条件7或29或48都可以,关联对象为“美国队长”即可;然而如果你想要给“美国队长”的头上加一个“TARGETMARK”标记而普通的美国大兵不受影响,那本篇的内容就无能为力了,因为如果在ini中美国大兵E1的小节里添加像例4那样的代码,则地图上所有的美国大兵都会带上这个标记。所以如果真想实现这个效果,需要用到其他的办法。

另外,之前讲的有关修改地图内置ini的所有内容修改的都是rulesmo.ini,在此我并不能确定是否可以按照类似的方法修改其他ini的内容,比如我曾想在地图内置ini中修改thememo.ini的内容,将一首背景音乐改成“可以重复播放”,即在地图内置ini中写相应小节并在下面写Repeat=yes,然而并没有达到预期效果。所以我猜测修改地图内置ini并不是对所有ini都是有效的。

本篇的内容就到这里,关于ini修改的应用实际上非常多,本篇也只是挑了一些我能够理解的并在自制战役中使用过的简单用法进行讲解。不过关于ini的内容还没有结束,之后预计2到3篇专栏教程还会继续讲与ini有关的内容。我们下期再见!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3