[红警2DIY]MOD制作教程⑦

您所在的位置:网站首页 ares平台使用教程 [红警2DIY]MOD制作教程⑦

[红警2DIY]MOD制作教程⑦

#[红警2DIY]MOD制作教程⑦| 来源: 网络整理| 查看: 265

本期专栏可以只阅读文字版。

前几期只要一碰到图像设置的问题,就让大家先复制写好的,相信大家也迫切的想知道这些代码是如何写的了。图像设置,主要就是Artmd.ini了,我主要把图像设置分为三种:模组资源设置,碎片与动画。我们在讲之前,先看一眼Artmd.ini,发现里面只有个[Movies]的注册段,并没有其他的,Movies什么意思大家很清楚吧,也就是说,动画的注册不会在Artmd.ini里,而在其他的地方。

那么,平时我们用的最多的就是对模组资源的设置了,也就是最一般的图像的设置。其实,除了自创的素材的大佬,我们这些采用别人素材的当然要用已经写好的了。很多人在底下评论问怎么制作,这个我一开始就说过了我不会搞素材的,大家可以去PPM(https://www.ppmsite.com/)和红警DIY论坛(http://bbs.ra2diy.com/)去看看,上面有制作教程的。我们接着说,用的别人的素材,但是有时也会需要对图像的设置进行修改,因此学习一下这些代码还是很有必要的,我以海豹部队为例,讲解下步兵SHP图像的设置。

[SEAL] ; Regular SEAL

Cameo=SEALICON    ;建造栏图标

AltCameo=SEALUICO   ;一星后建造栏图标

Sequence=SealSequence     ;使用的步兵动作序列

Crawls=yes        ;是否会爬行

Remapable=yes     ;是否含有特殊的红色像素

FireUp=3          ;开火时使用的帧序号

PrimaryFireFLH=100,0,100   ;使用主武器时的开火位置

这里说一下重点:

一直强调的注册,注册是在Rulesmd.ini对应的Image=语句,这个以前讲过了,不再细说

Sequence=步兵动作序列,决定了SHP各帧对应的步兵的动作

Remapable=特殊红色像素的作用,大家看到了,SHP文件中都是红色的单位,我们知道红警中应该是根据所选国家颜色自动变更颜色。这些特殊的红色像素会随你选的国家颜色而改变

那么,我们就来看看步兵动作序列吧!以下是海豹部队的动作序列[SealSequence]:

[SealSequence]

Ready=0,1,1

Guard=0,1,1

Walk=8,6,6

Idle1=56,15,0,S

Idle2=71,15,0,E

Crawl=86,6,6

Prone=86,1,6

Die1=134,15,0

Die2=149,15,0

FireUp=164,6,6

FireProne=212,6,6

Down=260,2,2

Up=276,2,2

Paradrop=602,1,0

Cheer=603,8,0,E

Tread=340,6,6

Swim=388,6,6

WetAttack=436,6,6

WetIdle1=484,15,0,S

WetIdle2=499,15,0,E

WetDie1=514,15,0

WetDie2=529,15,0

Die3=0,1,1

Die4=0,1,1

Die5=0,1,1

Panic=8,6,6

我们看到我没有给注释啊,因为我要单独说明一下,大家先看看这结构,都是这种“表示动作名称的单词=数字,数字,数字(,表示方向字母缩写)”。

第一个数字是特定动作的开始帧。注意游戏是从0号开始计算SHP的帧数,因此起始帧应该写0而不是1,同样第二帧应该是1不是2。第二个数字是每个特定动作用到的帧数,包括起始帧。第三个数字到达下一个动作所需的帧数。直接这样说有点难懂,大家打开个SHP文件,我们看到SHP文件的“行走”动作被分成了好几个方向,这个就是告诉游戏,相同动作不同方向的帧数。至于每个单词代表的动作,有不懂的就去翻网盘里的Art词典吧!

还要注意,不同的SHP可能使用同一个动作序列,所以想对某个兵的动作改动先看看是不是用的通用序列,如果是请单独复制一份改,不要把原先的通用的给改掉了。

说完了步兵,再来说说建筑,我以盟军基地[GACNST]为例。

[GACNST]

Remapable=yes

Foundation=4x4     ;指定建筑的占地面积,要用小小字母“x”,而不是用*

Height=4          ;指定动画的高度

AnimActive=0,26,3    ;动画播放的位置

Buildup=GACNSTMK    ;建筑建造时动画(如果没有,建筑不能被卖掉)

DemandLoadBuildup=true   ;建造动画在载入时就预先载入

FreeBuildup=true    ;作用不明

NewTheater=yes      ;是否在不同的场景使用不同的图像

ActiveAnim=GACNST_A    ;通常情况下播放的动画

ActiveAnimDamaged=GACNST_AD     ;残血状态下通常播放的动画

ActiveAnimZAdjust=-130      ;ZAdjust动画层次优先级

ActiveAnimYSort=362     ;YSort动画播放顺序的优先级

;----下面为建造厂使用的动画----

ProductionAnim=GACNST_B

ProductionAnimDamaged=GACNST_BD

ProductionAnimZAdjust=-10

ProductionAnimYSort=543

;-----结束动画设置-------

CanHideThings=True    ;能否挡住物体

CanBeHidden=False     ;能否被挡住

OccupyHeight=3      ;占用的实际高度(游戏判定飞行兵之类)

DamageFireOffset0=-24,-1      ;受伤时着火的位置1

DamageFireOffset1=64,36       ;着火的位置2

说一下重点:

还是先说注册,我们看到这里面定义了很多动画,只有建造动画不需要额外注册,其他的都要在Rulesmd.ini里面的[Animations]里面注册!

我注释的代码部分,我们看到是建造厂的设置,那么同样的其他有特殊动画的建筑会有类似的设置,希望大家能举一反三

Foundation=,指定建筑的占地面积,需要注意的是,地面工厂类尽量不用修改,如战车工厂,乱改会导致无法正常出坦克,兵营不用盟苏尤的会出兵位置奇怪。当然改机场没什么大问题,如果确实需要修改,需要用Ares自定义面积攻击计算好,NP就别想了

对于ActiveAnim=通常情况下播放的动画,还有两个语句控制他的行为:

ActiveAnimPoweredSpecial=true    ;动画只有在没被飞碟吸的时候才会播放ActiveAnimPowered=false    ;动画只有在有电力的时候才会播放

NewTheater=是否在不同的场景使用不同的图像,这就是在讲建筑时让大家遵循的命名规则,游戏会读取第二个字母为A的作为雪地的图像,采用为D的作为沙漠图像,采用为L的作为月球图像,等等,G为通用图像,如果上述图像找不到默认采用G,当然也不用担心,比如只有A的没有G的会怎么样,游戏也不傻,这时就会默认用A的

不同建筑的动画定义语句不同,基地有ProductionAnim=,比如维修厂之类的闲置动画和维修动画定义语句都不一样(例:SpecialAnim=与IdleAnim=),建议复制粘贴+修改大法,什么类型的就复制一下再修改就不会漏掉语句了

注意这一部分Art词典的解释是错误的

我们也看到了里面定义了很多动画了,什么残血动画之类的,那么我们接下来看看这些动画的设置

[GACNST_A]

Normalized=yes    ;动画是否以恒定的速度播放

Start=0      ;开始的帧数

LoopStart=0    ;开始循环的帧数

LoopEnd=3     ;循环播放的帧数

LoopCount=-1    ;循环播放的次数(-1为无限循环)

Rate=200      ;播放的速度

Layer=ground    ;播放层次=战场

NewTheater=yes

;DetailLevel=1

; Damaged active animation for construction yard

[GACNST_AD]

Image=GACNST_A    ;使用的SHP图像

Normalized=yes

Start=3

LoopStart=3

LoopEnd=6

LoopCount=-1

Rate=200

Layer=ground

NewTheater=yes

;DetailLevel=1

; Production animation for construction yard

[GACNST_B]

Normalized=yes

Start=0

LoopStart=0

LoopEnd=20

LoopCount=1

Rate=200

Layer=ground

NewTheater=yes

;DetailLevel=1

Shadow=yes

; Damaged Production anim for construction yard

[GACNST_BD]

Image=GACNST_B

Normalized=yes

Start=20

LoopStart=20

LoopEnd=40

LoopCount=1

Rate=200

Layer=ground

NewTheater=yes

没有什么需要特别解释的,我们打开XCC看SHP文件可以看到一个GACNST_A同时有绿血的正常状态图和残血的破旧状态图,所以用指定起始帧的方式定义两个动画,分别用作正常和破旧状态的图像

普通的图像设置就这么点,还是非常简单的,VXL类的我没讲,第一我不会做VXL,第二VXL我以前提到过,它在Artmd.ini里就指定了个Voxel=yes,其他的全是.hva文件的功劳,这个是做VXL的领域了。那么接下来我们看看碎片,碎片其实也算是一种图像,碎片是高阶必备品,因为很多东西上可以跟碎片产生联系,进而实现更多功能,比如碎片可以产生矿石,当然作为新人向教程不准备详解,大佬们可以去自行研究。

[DBRIS1LG]

Elasticity=0.0    ;碎片的弹性0-1之间

MaxXYVel=25.0     ;碎片在平面上的速度,不得小于

MinZVel=25.0     ;碎片的竖直速度,正数为向上飞

ExpireAnim=TWLT036    ;爆炸动画

Damage=20      ;被砸到的伤害

DamageRadius=80    ;伤害的范围(没什么实际作用)

Warhead=HE     ;弹头

LoopStart=0

LoopEnd=15

LoopCount=-1

RandomRate=220,600     ;随机播放速度(220,600)

;DetailLevel=0

Bouncer=yes     ;是否有弹性

TrailerAnim=SMOKEY2     ;尾烟的动画

TrailerSeperation=2     ;每隔多少帧产生一个新的尾烟动画

我们接下来看一下真正的动画(即SHP格式的动画)。动画要在Rulesmd.ini里的[Animations]里注册,这里我写了一个燃烧的火焰的动画,具体啥用先不告诉你们,素材也不先给你们,来打我啊。

那么我们来看一下我写好的代码。

[COMBUSTION1]

Image=COMBUSTION      

Scorch=yes    ;是否会留下烧焦地面的痕迹,Ares平台会额外增加功能

Layer=ground

Damage=2

Warhead=Fire2

Rate=500

LoopCount=8

UseNormalLight=yes    ;使用正常的亮度

Translucency=25     ;透明度,仅支持25,50,75,三个透明度

Flamer=yes   ;是否为火焰,NP平台中无实际作用

Next=COMBUSTION2   ;播放完后下一个播放的动画

[COMBUSTION2]

Image=COMBUSTION          

Scorch=yes

Layer=ground

Damage=2

Warhead=Fire2

Rate=450

LoopCount=12

UseNormalLight=yes

Translucency=25

Flamer=yes

Next=COMBUSTION3

[COMBUSTION3]

Image=COMBUSTION

Layer=ground

Damage=2

Warhead=Fire2

LoopCount=10

Rate=400

UseNormalLight=yes

Translucency=50

Flamer=yes

Next=COMBUSTION4

[COMBUSTION4]

Image=COMBUSTION         

Layer=ground

Surface=yes

Damage=2

Warhead=Fire2

LoopCount=3

Rate=350

UseNormalLight=yes

Translucency=75

Flamer=yes

这里说一下技巧:

通过透明度越来越高实现火焰渐渐熄灭的效果

大家还能看到,这个火焰定义了伤害和弹头的哦,注意一下,原版游戏引擎动画定义弹头是无效的,会被锁定为Fire2弹头,只有NPExt和Ares可以改弹头,或者一些别的什么奇葩小众引擎!

那么本期教程就到这里结束了。大家也看到了,我在本期提到了很多关于游戏引擎(平台)的事情,还提到了之前视频忘了介绍的Ares平台(我绝对不会说因为我现在才刚刚收到Ares能存档的消息)。因为我看很多人想让我出关于Ares平台的视频,那么我现在先把自己的MOD搬到Ares(之前用NPatch做的,好多代码不一样,现在才完成80%,所以本来本篇文字版教程应该昨天更新的),以后会在合适的时间把教程也换成Ares平台。

注意啦,如果有心急现在就要换Ares平台的,这样我们的“进化”功能就失效了,Ares目前不支持这个功能哦,其他的功能都能实现,我也会给大家讲一下NPatch到Ares的过渡技巧。

下期声音设置的教程,将介绍三种声音的设置:音效及语音,EVA,BGM。相信大家也想给自己的红警加上自己喜欢的BGM吧!

PS:为了下期的准备,大家先去下载个音频格式转换软件吧,我用的格式工厂。

#最后更新:2023-1-6



【本文地址】


今日新闻


推荐新闻


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