RAT红警社区

查看: 322|回复: 5

[MOD教程] 红3MOD制作:ArmorSet和LocomotorSet详解(zyb编辑教程)

[复制链接]

315

积分

230

好评

220

帖子

钢铁洪流

Rank: 3Rank: 3

积分
315
QQ
发表于 2017-6-17 20:22:08 | 显示全部楼层 |阅读模式
本帖最后由 牧Star 于 2017-6-21 09:43 编辑

大家好,我是zyb(mod制作者),今天我来给大家带来LocomotorSet和ArmorSet的介绍
locomotorset,存在于每一个可以移动的单位中,在<GameObject和  <Draws>的前面(官方位置),一个单位所需要的基本格式为
[XML] 纯文本查看 复制代码
<Tags></Tags>
<Includes></Includes>
<GameObject
  id="UnitName"
  SelectPortrait="SARanger_L"
  ButtonImage="SARanger"
  Side="UnitNameSide"
  EditorSorting="UNIT"
  TransportSlotCount="1"
  BuildTime="10.0"
  CommandSet="UnitNameCommandSet"
  IsTrainable="true"
  KindOf="PRELOAD SELECTABLE CAN_ATTACK CAN_CAST_REFLECTIONS INFANTRY SCORE CAN_CAPTURE"
  RadarPriority="UNIT"
  EditorName="UnitName">
  <DisplayName>UnitName</DisplayName>
  <ArmorSet
   Armor="NoArmor"
   DamageFX="NormalDamageFX" />
  <LocomotorSet
   Locomotor="HumanLocomotor"
   Condition="NORMAL"
   Speed="30.0" />
  <Draws>
   <ScriptedModelDraw
    id="ModuleTag_Draw"
    OkToChangeModelColor="true">
    <ModelConditionState
     ParseCondStateType="PARSE_DEFAULT">
     <Model
      Name="GURiflman_SKN" />
    </ModelConditionState>
   </ScriptedModelDraw>
  </Draws>
  <Behaviors>
   <WeaponSetUpdate
    id="ModuleTag_WeaponSetUpdate">
    <WeaponSlotHardpoint
     ID="1">
     <Weapon
      Ordering="PRIMARY_WEAPON"
      Template="UnitNameWeapon" />
    </WeaponSlotHardpoint>
   </WeaponSetUpdate>
   <Physics
    id="ModuleTag_Physics" />
   <EmotionTrackerUpdate
    id="Module_ETU"
    >
    <TauntAndPointExcluded
     Rule="NONE" />
   </EmotionTrackerUpdate>
   <SlowDeath
    id="ModuleTag_Death"
    SinkDelay="3s"
    SinkRate="2.4"
    DestructionDelay="8s">
    <DieMuxData
     DeathTypes="ALL" />
   </SlowDeath>
  </Behaviors>
  <AI>
   <AIUpdate
    id="ModuleTag_AI"
    AutoAcquireEnemiesWhenIdle="YES" />
  </AI>
  <Body>
   <ActiveBody
    id="ModuleTag_Body"
    MaxHealth="100.0"
    InitialHealth="100.0" />
  </Body>
  <Geometry
   IsSmall="true">
   <Shape
    Type="CYLINDER"
    MajorRadius="7.0"
    Height="13.0"></Shape>
  </Geometry>
  <ShadowInfo
   Type="DECAL"
   SizeX="14"
   SizeY="14"
   Texture="ShadowI" />
  <VisionInfo
   VisionRange="100"
   ShroudClearingRange="200" />
  <CrusherInfo
   id="id_CrusherInfo"
   CrushableLevel="0" />
</GameObject>
</AssetDeclaration>

其中,今天讨论的locomotor在里面发挥的作用是让单位行走,让单位走的像天启那样慢,还是ifv那样快,是不是能上天,能下水等等,都是由他决定的
locomotor的Condition基本有这两个类型
[XML] 纯文本查看 复制代码
NORMAL----正常移动
TAXIING----滑行

先拿ifv举例(ifv内心独白:为什么又是我 作者:额,随便开的 ifv:==!)
[XML] 纯文本查看 复制代码
  <LocomotorSet
   Locomotor="TestReactiveLocomotorWHEELS"
   Condition="NORMAL"
   Speed="120.0" />

Condition已经说过了,Locomotor这个则是引用的(引用的不在这个单位里,在locomotor.xml内),引用源码如下
[XML] 纯文本查看 复制代码
<LocomotorTemplate
  id="TestReactiveLocomotorWHEELS"
  Surfaces="GROUND CRUSHABLE_OBSTACLE"
  TurnTimeSeconds="1.0s"
  TurnTimeDamagedSeconds="1.0s"
  MaxSpeedDamaged="75%"
  AccelerationSeconds="0.01s"
  BrakingSeconds="0.01s"
  SlowTurnRadius="0.0"
  FastTurnRadius="20.0"
  TurnThresholdHS="90d"
  BehaviorZ="NO_MOTIVE_FORCE"
  Appearance="TREADS"
  UseTerrainSmoothing="true"
  CanReverseMove="true"
  AccelPitchLimit="4d"
  BounceKick="0.4r"
  PitchStiffness="0.2"
  RollStiffness="0.75"
  PitchDamping="0.2"
  RollDamping="0.75"
  ForwardAccelerationPitchFactor="0.01"
  LateralAccelerationRollFactor="0.0"
  HasSuspension="true"
  ClampOrientationToPathTangent="true"
  MaximumWheelExtension="-2.3"
  MaximumWheelCompression="1.4"
  ReorientIfTurnTooSharp="true"
  />

可以看到,EA的设计还是比较全面的,基本上大部分情况都涵盖了
只说几个大家熟悉的
[XML] 纯文本查看 复制代码
Surfaces------------------在什么上面行走
TurnTimeSeconds-------------掉头耗费的时间(这就是为什么对战们用ifv倒退行进的原因)
TurnTimeDamagedSeconds-------------掉头后什么时候攻击(这就是为什么对战们用ifv倒退行进的原因)
MaxSpeedDamaged-------------受伤以后的行驶速度(被削了75%,注意,100%往上是增加,反之则是下降)
CanReverseMove----------------能否倒退移动(对战中神技)

好的基本上解释完了ifv的locomotor,顺便你们可以按照这个思路看看别的(像什么步兵倒退移动啦,受伤后速度加快啦等等修改我才不会说呢QAQ)
locomotor说完了,接下来说说ArmorSet
ArmorSet,这是个比较有意思的东西,因为它决定了这个单位的护甲,玩过ra3的人都知道,打pk时,pk开盾收到的伤害那叫一个低啊,但,凭什么瓶子f一个pk就死了这是因为ea的科学吗(大雾),咳咳当然不是,这是修正比的原因啦,修正比就跟护甲有一些关系的啦
继续用ifv(ifv:我跟你有仇是吧....)
[XML] 纯文本查看 复制代码
<ArmorSet
   Armor="AlliedAntiAirVehicleTech1Armor"
   DamageFX="VehicleDamageFX" />

damagefx不需要看了,因为那是粒子动画和粒子特效的事情,今天不说,说下armor的事情
Armor也是引用的,其xml文件在Armor.xml里
armor引用代码段如下
[XML] 纯文本查看 复制代码
<ArmorTemplate
  id="AlliedAntiAirVehicleTech1Armor"
  inheritFrom="BaseHarassmentVehicleArmor">
</ArmorTemplate>

阿勒,这个ifv玩起了引用,报复我吗?(ifv:嘿嘿,叫你挖我源码,顺便一提,所有的护甲类型都是引用的,所以,根据引用的inheritFrom,我们去查BaseHarassmentVehicleArmor)
[XML] 纯文本查看 复制代码
<ArmorTemplate
  id="BaseHarassmentVehicleArmor"
  SideDamageScalar="105"
  RearDamageScalar="110">
  <Armor
   Damage="MELEE"
   Percent="0" />
  <Armor
   Damage="SNIPER"
   Percent="0" />
  <Armor
   Damage="GUN"
   Percent="25" />  
  <Armor
   Damage="AUTO_CANNON"
   Percent="100" />
  <Armor
   Damage="IMPACT"
   Percent="75" />
  <Armor
   Damage="ROCKET"
   Percent="75" />
  <Armor
   Damage="FLAK"
   Percent="100" />
  <Armor
   Damage="CANNON"
   Percent="170" />
  <Armor
   Damage="PRISM"
   Percent="170" />
  <Armor
   Damage="TESLA"
   Percent="170" />
  <Armor
   Damage="EXPLOSIVE"
   Percent="100" />
  <Armor
   Damage="RADIATION"
   Percent="5" />
</ArmorTemplate>

SideDamageScalar和RearDamageScalar就是在教程中提到的”单位在不同方面受到的攻击不同”啦,我们可以看到,在两侧攻击ifv的时候有加成,为5%,在后方攻击ifv时则加成为10%
好的,接下来则是重头戏,在这些看到下面那一串armor了吗(众人:我们不是瞎子)这些不同的damage是什么呢
总结下
[XML] 纯文本查看 复制代码
GUN--------------------步枪
AUTO_CANNON--------------------自行炮
IMPACT--------------------冲撞
ROCKET--------------------导弹
FLAK--------------------高射炮
CANNON--------------------火炮
PRISM--------------------光棱
TESLA--------------------磁暴
EXPLOSIVE--------------------爆炸物
RADIATION--------------------辐射

哎,这个跟修正比好像啊,恩没错,这个就是ifv受到各类伤害的护甲的反应,我们可以看到CANNON,PRISM,TESLA攻击的时候,是有加成的,所以这就是为啥磁暴,幻影,标枪攻击有加成了,所以,狠狠地用磁暴,幻影,标枪打死ifv来保护你的空军吧
基本上写完了,如果要改的话请把要更改的复制一份到你的mod中,修改数据,然后保存写入mod.xml中(不会的见牧星dalao的教程),编译,然后就完成啦!
                                                                                                                                                                        by-zyb
(ps:可能有个别错误,dalao请指正)
让更多人知道ra3和RTS系列游戏的魅力!

990

积分

874

好评

508

帖子

版主

答题卡同志

积分
990
发表于 2017-6-17 20:32:23 | 显示全部楼层
    怎么好像贴吧眼熟见过

315

积分

230

好评

220

帖子

钢铁洪流

Rank: 3Rank: 3

积分
315
QQ
 楼主| 发表于 2017-6-17 20:36:29 | 显示全部楼层
陵点捌伍 发表于 2017-6-17 20:32
怎么好像贴吧眼熟见过

之前问你问题的那个人==
让更多人知道ra3和RTS系列游戏的魅力!

87

积分

84

好评

41

帖子

游骑先锋

Rank: 2

积分
87
QQ
发表于 2017-6-17 22:29:35 | 显示全部楼层
陵点捌伍 发表于 2017-6-17 20:32
怎么好像贴吧眼熟见过

核仔无处不在

232

积分

196

好评

18

帖子

版主

积分
232
QQ
发表于 2017-6-18 15:02:02 | 显示全部楼层
利害了。
爱在夜深了埋头在SDK的胸口,好好的奶上一口MOD。
回复

使用道具 举报

2

积分

2

好评

1

帖子

预备兵役

Rank: 1

积分
2
发表于 2017-8-12 17:59:25 | 显示全部楼层
冒个泡,话说这个论坛是哪儿来的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表