方便Rules的编写。
前言
谈及基于NP平台(原版也一样)的红色警戒MOD开发,充分了解Rules是必不可少的一环。可一部分人(包括我本人)初学时在面对那大段大段的代码块(其实就是一堆变量啦)时,总是会感觉头痛。这篇文章将会详细分析Rules的撰写方法。
按照顺序,Rules可分为全局设置,注册表,阵营设置以及单位设置。今天时间不早了,就先讲一下最为重要的单位设置。
单位设置
单位设置完全地定义了游戏中的单位(包括建筑,步兵和机动单位),是Rules编辑中最重要的一环。如果单位设置没有被编写,新加入的单位在游戏中不会有任何体现。
下面以美国大兵为例进行分析。
Rules | 注释 |
---|---|
[E1] | 方括号标志着代码块的开始,括号内为该单位的注册名。代码块持续到下一个方括号开始或者文档结束。 |
UIName=Name:E1 | 在游戏UI中显示的单位名,需要在RA2md.csf文件中指定对应的文本。 |
Name=GI | 游戏内部单位名,可带有空格,完全没用(甚至可重复)。 |
Image=GI | 单位的模型。需要在Art中指定。 |
Category=Soldier | 单位职业,决定了单位出现在游戏中的哪一个菜单栏。 |
Primary=M60 | 主要武器。当主要武器可攻击目标时,次要武器默认为不使用。 |
Secondary=Para | 次要武器。 |
Occupier=yes | 决定了单位是否可以占领平民建筑。 |
OccupyWeapon=UCPara | 在平民建筑(或战斗碉堡)内使用的武器。 |
EliteOccupyWeapon=UCElitePara | 单位三星(上士军衔)后在平民建筑内使用的武器。 |
OpenTransportWeapon=1 | 在战斗要塞内使用的武器,默认为-1。 |
Prerequisite=GAPILE | 建造前提。 |
CrushSound=InfantrySquish | 被碾压时的音效。 |
Strength=125 | 生命值。 |
Pip=white | 在步兵车,防空履带车等载具内显示的颜色。 |
OccupyPip=PersonBlue | 占领建筑后显示的颜色。 |
Armor=none | 装甲。弹头对不同装甲的伤害一般不同,绝大多数弹头只能攻击特定的装甲。 |
TechLevel=1 | 单位的科技等级,游戏内置的变量。在部分地图和模式中,科技等级受限。科技等级同样决定了兵种在UI界面中的显示顺序,科技等级低者优先排列。科技等级为-1,为隐藏单位;为10,则为超级武器。 |
Sight=5 | 单位的视野。计量单位是游戏中的一格。 |
Speed=4 | 单位的速度。 |
Owner=British,French,Germans,Americans | 单位的所有者,实际上没什么卵用。 |
Cost=200 | 单位的造价。 |
Soylent=100 | 单位卖出(送入部队回收厂)的价格。 |
Points=10 | 被摧毁时敌方得到的经验值。 |
IsSelectableCombatant=yes | 决定了单位是否可选。 |
VoiceSelect=GISelect | 被选定时的音效。 |
VoiceMove=GIMove | 移动时的音效。 |
VoiceAttack=GIAttackCommand | 接受攻击指令时的音效。 |
VoiceFeedback=GIFear | 恐惧时的音效,只对可受惊吓的单位有效。 |
VoiceSpecialAttack=GIMove | 特殊攻击的音效,意义不明。 |
DieSound=GIDie | 死亡的音效。 |
Locomotor={4A582744-9839-11d1-B709-00A024DDAFD1} | 单位的移动模式。 |
PhysicalSize=1 | 单位的碰撞箱大小。 |
MovementZone=Infantry | 单位的运动限制,要与职业对应。 |
ThreatPosed=10 | 单位对AI的威胁等级。 |
ImmuneToVeins=yes | 单位是否免受VXL单位的误伤。 |
ImmuneToPsionics=no | 单位是否免疫心灵控制。 |
Bombable=yes | 单位是否可以被疯狂伊文安装炸弹。 |
Deployer=yes | 单位是否可以部署。 |
DeployFire=yes | 单位部署后可否攻击。 |
VeteranAbilities=STRONGER,FIREPOWER,ROF,SIGHT,FASTER | 单位一星(下士军衔)时获得的能力。 |
EliteAbilities=SELF_HEAL,STRONGER,FIREPOWER,ROF | 单位三星(上士军衔)时获得的能力。 |
Size=1 | 单位在载具中的占格数。 |
Crushable=yes | 单位可否被碾压。 |
DeploySound=GIDeploy | 单位部署时的音效。 |
UndeploySound=GIUndeploy | 单位解除部署时的音效。 |
ElitePrimary=M60E | 单位三星(上士军衔)时的主要武器。 |
EliteSecondary=ParaE | 单位三星(上士军衔)时的次要武器。 |
IFVMode=2 | 单位在多功能步兵车中的模式。 |