[ Index ] WAROFGENERALS

PHP Cross Reference of WAROFGENERALS MODS SOURCES

title

Body

[close]

/Command and conquer Heure H/Light of five stars/INI/Object/ -> WeaponObjects.ini (source)

   1  ;------------------------------------------------------------------------------
   2  Object MOAB
   3  
   4    ; *** ART Parameters ***
   5    Draw = W3DModelDraw ModuleTag_01
   6      OkToChangeModelColor = Yes
   7      DefaultConditionState
   8        Model = PMMoab
   9      End
  10    End
  11  
  12    ; ***DESIGN parameters ***
  13    DisplayName         = OBJECT:DaisyCutterBomb
  14    EditorSorting       = SYSTEM
  15    TransportSlotCount  = 10                 ;how many "slots" we take in a transport (0 == not transportable)
  16    VisionRange         = 300.0  
  17    ShroudClearingRange = 0
  18    ArmorSet
  19      Conditions      = None
  20      Armor           = ProjectileArmor
  21      DamageFX        = None
  22    End
  23  
  24    ; *** AUDIO Parameters ***
  25    SoundFallingFromPlane = DaisyCutterWeapon
  26    
  27    ; *** ENGINEERING Parameters ***
  28    KindOf            = PROJECTILE
  29    Body = ActiveBody ModuleTag_02
  30      MaxHealth       = 100.0
  31      InitialHealth   = 100.0
  32    End
  33  
  34  ;;;;;;;  Behavior = CreateObjectDie ModuleTag_03 ; Lorenzen Killed 5/31
  35  ;;;;;;;    CreationList = OCL_MOABExplode
  36  ;;;;;;;  End
  37  ;;;;;;;  Behavior = CreateObjectDie ModuleTag_10
  38  ;;;;;;;    CreationList = OCL_MOABEffectSpheroid
  39  ;;;;;;;  End
  40  
  41    ;Duplicate effect, exists in FireFX for WeaponFX_MOAB_Blast
  42    ;Behavior = FXListDie ModuleTag_04
  43    ;  DeathFX = WeaponFX_MOAB_Blast
  44    ;End
  45  
  46    Behavior = DestroyDie ModuleTag_05
  47      ;nothing
  48    End
  49       
  50    Behavior = AIUpdateInterface ModuleTag_06
  51    End
  52    Locomotor = SET_NORMAL None
  53    Behavior = PhysicsBehavior ModuleTag_07
  54      Mass                = 75.0
  55      AerodynamicFriction = 1  ; this is now friction-per-sec
  56      ForwardFriction     = 33     ; this is now friction-per-sec
  57      CenterOfMassOffset  = 2  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
  58    End
  59    Behavior = HeightDieUpdate ModuleTag_08
  60      TargetHeight = 5.0                          ;;; changed from previous, 50
  61      TargetHeightIncludesStructures = Yes
  62    End
  63    
  64    Behavior = SpecialPowerCompletionDie ModuleTag_09
  65      SpecialPowerTemplate = SuperweaponMOAB
  66    End
  67  
  68    Behavior = FireWeaponWhenDeadBehavior ModuleTag_10
  69      DeathWeapon   = MOABDetonationWeapon
  70      StartsActive  = Yes                      
  71    End
  72  
  73    Behavior = SmartBombTargetHomingUpdate ModuleTag_11
  74      CourseCorrectionScalar = 0.99 ; 1=no homing, 0=snapto; 0.99=smooth, 0.95=too-fast
  75    End
  76  
  77  
  78  
  79    
  80  
  81    Geometry = Sphere
  82    GeometryIsSmall = Yes
  83    GeometryMajorRadius = 12.0
  84  
  85  End
  86  
  87  ;------------------------------------------------------------------------------
  88  Object MOABGas
  89  
  90    ; *** ART Parameters ***
  91  ;  Draw = W3DModelDraw
  92  ;;    ConditionState      = NONE
  93  ;      Model             = PMDumpst04
  94  ;    End
  95  ;  End
  96  
  97    ; *** DESIGN Parameters ***
  98  
  99    ; *** ENGINEERING Parameters ***
 100    KindOf = IMMOBILE
 101    Body                  = ActiveBody ModuleTag_01
 102      MaxHealth           = 1.0
 103      InitialHealth       = 1.0
 104    End
 105  
 106    Behavior = PhysicsBehavior ModuleTag_02
 107      Mass                = 150.0
 108      AerodynamicFriction = 7  ; this is now friction-per-sec
 109      ForwardFriction     = 200   ; this is now friction-per-sec
 110    End
 111    Behavior = HeightDieUpdate ModuleTag_03
 112      TargetHeight                     = 40.0
 113      TargetHeightIncludesStructures   = Yes
 114      DestroyAttachedParticlesAtHeight = 41.0   ; Hack, todo remove this
 115    End
 116    Behavior = SlowDeathBehavior ModuleTag_04
 117      DestructionDelay        = 1000
 118      DestructionDelayVariance = 100
 119      FX                  = INITIAL FX_MOABIgnite
 120      FX                  = FINAL   FX_MOABFinalExplosion
 121      Weapon              = MIDPOINT   MOABFlameWeapon    ; Just a spot of flame to light trees on fire
 122      Weapon              = FINAL   MOABDetonationWeapon
 123    End
 124  
 125  End
 126  
 127  
 128  ;------------------------------------------------------------------------------
 129  ;This beam destroys incoming missles
 130  ;------------------------------------------------------------------------------
 131  Object AvengerPointDefenseLaserBeam
 132    ; *** ART Parameters ***
 133    Draw = W3DLaserDraw ModuleTag_01
 134      Texture = EXLaser4.tga
 135      NumBeams = 4                              ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
 136      InnerBeamWidth = 0.005                    ;The total width of beam
 137      InnerColor = R:255 G:180 B:100 A:120      ;The inside color of the laser (hot)
 138      OuterBeamWidth = 10                       ;The total width of beam
 139      OuterColor = R:100 G:100 B:100 A:60       ;The outside color of the laser (cool)
 140      Tile = Yes                                ;The height of the texture will determine how many times to tile the texture to fit without scaling.
 141      ScrollRate = -2500                           ;Scrolls the texture offset this fast -- towards(-) away(+)
 142      Segments = 1                              ;Number of segments -- more segments give smoother curve (but more joints) Current max: 20
 143      SegmentOverlapRatio = 0                   ;This value overlaps(+) or separates(-) the segments by ratio
 144      TilingScalar = -3                          ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)     
 145     
 146     ;MaxIntensityLifetime = 2000               ;Laser stays at max intensity for specified time in ms.
 147     ;FadeLifetime = 250                        ;Laser will fade and delete.
 148     ;@todo -- add shot ability functionality (instead of instant point A to B)
 149    End
 150  
 151    KindOf = IMMOBILE INERT
 152    ClientUpdate = LaserUpdate ModuleTag_02
 153      MuzzleParticleSystem = PaladinPointDefenseLaserFlare
 154      TargetParticleSystem = AvengerDestroySmoke
 155    End
 156  
 157    ;Used as a weapon, this is essentially a fast pulse laser. Adjusting
 158    ;the lifetime values will determine how long it renders. The damage
 159    ;is applied immediately, so lifetime doesn't matter.
 160    Behavior = LifetimeUpdate ModuleTag_03
 161      MinLifetime = 95   ; min lifetime in msec
 162      MaxLifetime = 95   ; max lifetime in msec
 163    End
 164    Behavior = DestroyDie ModuleTag_04
 165      ;nothing
 166    End
 167  End
 168  
 169  
 170  
 171  ;------------------------------------------------------------------------------
 172  ;This beam destroys enemy aircraft
 173  ;------------------------------------------------------------------------------
 174  Object AvengerLaserBeam
 175    ; *** ART Parameters ***
 176    Draw = W3DLaserDraw ModuleTag_01
 177       Texture = EXLaser4.tga
 178      NumBeams = 4                              ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
 179      InnerBeamWidth = 0.005                    ;The total width of beam
 180      InnerColor = R:100 G:0 B:0 A:100          ;The inside color of the laser (hot)
 181      OuterBeamWidth = 15                       ;The total width of beam
 182      OuterColor = R:100 G:0 B:0 A:0            ;The outside color of the laser (cool)
 183      Tile = Yes                                ;The height of the texture will determine how many times to tile the texture to fit without scaling.
 184      ScrollRate = -2500                        ;Scrolls the texture offset this fast -- towards(-) away(+)
 185      Segments = 1                              ;Number of segments -- more segments give smoother curve (but more joints) Current max: 20
 186      SegmentOverlapRatio = 0                   ;This value overlaps(+) or separates(-) the segments by ratio
 187      TilingScalar = -3                         ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)     
 188  
 189      ;MaxIntensityLifetime = 2000              ;Laser stays at max intensity for specified time in ms.
 190      ;FadeLifetime = 0                         ;Laser will fade and delete.
 191      ;@todo -- add shot ability functionality (instead of instant point A to B)
 192    End
 193  
 194    KindOf = IMMOBILE INERT
 195    Geometry = Sphere
 196    GeometryIsSmall = Yes
 197    GeometryMajorRadius = 2.0
 198    ClientUpdate = LaserUpdate ModuleTag_07
 199      MuzzleParticleSystem = PaladinPointDefenseLaserFlare
 200      TargetParticleSystem = AvengerStarburst
 201      PunchThroughScalar = 1.3 ; If our target dies, we get this much bigger so it looks like we punched through
 202    End
 203  
 204    Behavior = DestroyDie ModuleTag_03
 205      ;nothing
 206    End
 207    Behavior = LifetimeUpdate ModuleTag_04
 208      MinLifetime = 205   ; min lifetime in msec
 209      MaxLifetime = 205   ; max lifetime in msec
 210    End
 211  End
 212  
 213  ;------------------------------------------------------------------------------
 214  ;This beam targets troops and passes the info to other weapon systems
 215  ;------------------------------------------------------------------------------
 216  Object AvengerTargetingLaserBeam
 217    ; *** ART Parameters ***
 218    Draw = W3DLaserDraw ModuleTag_01
 219    
 220    Texture = EXLaser4.tga
 221    NumBeams = 4                              ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
 222  
 223    InnerBeamWidth = 5                       ;The total width of beam
 224    InnerColor = R:50 G:50 B:255 A:50         ;The inside color of the laser (hot)
 225  
 226    OuterBeamWidth = 1                        ;The total width of beam
 227    OuterColor = R:255 G:0 B:126  A:150       ;The outside color of the laser (cool)
 228   
 229    Tile = Yes                                ;The height of the texture will determine how many times to tile the texture to fit without scaling.
 230    ScrollRate = -2500                           ;Scrolls the texture offset this fast -- towards(-) away(+)
 231    Segments = 1                              ;Number of segments -- more segments give smoother curve (but more joints) Current max: 20
 232    SegmentOverlapRatio = 0                   ;This value overlaps(+) or separates(-) the segments by ratio
 233    TilingScalar = -3                          ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)     
 234   
 235    ;MaxIntensityLifetime = 2000              ;Laser stays at max intensity for specified time in ms.
 236    ;FadeLifetime = 0                         ;Laser will fade and delete.
 237  
 238    ;@todo -- add shot ability functionality (instead of instant point A to B)
 239    End
 240  
 241    KindOf = IMMOBILE INERT
 242    ClientUpdate = LaserUpdate ModuleTag_02
 243      MuzzleParticleSystem = GenericBlueLaserFlare
 244      TargetParticleSystem = GenericBlueLaserFlare
 245    End
 246  
 247    ;Used as a weapon, this is essentially a fast pulse laser. Adjusting
 248    ;the lifetime values will determine how long it renders. The damage
 249    ;is applied immediately, so lifetime doesn't matter.
 250    Behavior = LifetimeUpdate ModuleTag_03
 251      MinLifetime = 210   ; min lifetime in msec
 252      MaxLifetime = 210   ; max lifetime in msec
 253    End
 254    Behavior = DestroyDie ModuleTag_04
 255      ;nothing
 256    End
 257  End
 258  
 259  ;------------------------------------------------------------------------------
 260  Object MicrowaveDisableStream
 261    ; *** ART Parameters ***
 262    Draw = W3DLaserDraw ModuleTag_01
 263      Texture = EXSineWave.tga
 264     
 265      Tile = Yes
 266      TilingScalar = .5
 267      ScrollRate = -10                       ;Scrolls the texture offset this fast -- towards(-) away(+)    
 268      NumBeams = 1                          ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data. Current max: 10
 269      InnerBeamWidth = 8                    ;The total width of beam
 270      InnerColor = R:100 G:200 B:100 A:50   ;The inside color of the laser (hot)
 271      OuterBeamWidth = 5.0                  ;The total width of beam
 272      OuterColor = R:96 G:255 B:96  A:5     ;The outside color of the laser (cool)
 273   End
 274  
 275  
 276    KindOf = IMMOBILE
 277    ClientUpdate = LaserUpdate ModuleTag_02
 278      MuzzleParticleSystem = GenericGreenLaserFlare
 279      TargetParticleSystem = HackFlare
 280    End
 281  
 282    Behavior = DeletionUpdate ModuleTag_03
 283      MinLifetime = 126   ; min lifetime in msec
 284      MaxLifetime = 126   ; max lifetime in msec
 285    End
 286  End
 287  
 288  ;--------------------------------------------------------------------------------------------------------------
 289  Object ECMDisableStream
 290    ; *** ART Parameters ***
 291    Draw = W3DLaserDraw ModuleTag_01
 292    Texture = EXLaser4.tga
 293    NumBeams = 3                              ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
 294    InnerBeamWidth = 1                       ;The total width of beam
 295    InnerColor = R:5 G:25 B:5 A:100         ;The inside color of the laser (hot)
 296    OuterBeamWidth = 50                        ;The total width of beam
 297    OuterColor = R:10 G:100 B:10  A:75       ;The outside color of the laser (cool)
 298    Tile = Yes                                ;The height of the texture will determine how many times to tile the texture to fit without scaling.
 299    ScrollRate = 35                           ;Scrolls the texture offset this fast -- towards(-) away(+)
 300    Segments = 1                              ;Number of segments -- more segments give smoother curve (but more joints) Current max: 20
 301    SegmentOverlapRatio = 1                   ;This value overlaps(+) or separates(-) the segments by ratio
 302    TilingScalar = 0.05                          ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)     
 303   
 304    ;MaxIntensityLifetime = 2000              ;Laser stays at max intensity for specified time in ms.
 305    ;FadeLifetime = 0                         ;Laser will fade and delete.
 306    ;@todo -- add shot ability functionality (instead of instant point A to B)
 307    End
 308  
 309    KindOf = IMMOBILE
 310    ClientUpdate = LaserUpdate ModuleTag_02
 311      MuzzleParticleSystem = GenericGreenLaserFlare
 312      TargetParticleSystem = GenericGreenLaserFlare
 313    End
 314  
 315    ;Used as a weapon, this is essentially a fast pulse laser. Adjusting
 316    ;the lifetime values will determine how long it renders. The damage
 317    ;is applied immediately, so lifetime doesn't matter.
 318    Behavior = LifetimeUpdate ModuleTag_03
 319      MinLifetime = 210   ; min lifetime in msec
 320      MaxLifetime = 640   ; max lifetime in msec
 321    End
 322    Behavior = DestroyDie ModuleTag_04
 323      ;nothing
 324    End
 325  End
 326  
 327  ;------------------------------------------------------------------------------
 328  
 329  ;------------------------------------------------------------------------------
 330  Object ChinaCarpetBomb
 331  
 332    ; *** ART Parameters ***
 333    Draw = W3DModelDraw ModuleTag_01
 334      DefaultConditionState
 335        Model = EXCarptBmb
 336      End
 337    End
 338  
 339    ; ***DESIGN parameters ***
 340    DisplayName      = OBJECT:CarpetBomb
 341    Side = America
 342    EditorSorting   = SYSTEM
 343    TransportSlotCount = 1                 ;how many "slots" we take in a transport (0 == not transportable)
 344    VisionRange = 300.0  
 345    ArmorSet
 346      Conditions      = None
 347      Armor           = ProjectileArmor
 348      DamageFX        = None
 349    End
 350  
 351    ; *** AUDIO Parameters ***
 352    SoundFallingFromPlane = DaisyCutterWeapon
 353  
 354    ; *** ENGINEERING Parameters ***
 355    KindOf            = PROJECTILE
 356    Body = ActiveBody ModuleTag_02
 357      MaxHealth       = 2000.0
 358      InitialHealth   = 2000.0
 359    End
 360  
 361    Behavior = AIUpdateInterface ModuleTag_03
 362    End
 363    Locomotor = SET_NORMAL None
 364  
 365    Behavior = PhysicsBehavior ModuleTag_04
 366  
 367      Mass                  = 75.0
 368      AerodynamicFriction   = 1     ; this is now friction-per-sec
 369      ForwardFriction       = 33    ; this is now friction-per-sec
 370      CenterOfMassOffset    = 2     ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
 371    End
 372  
 373    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
 374      DeathWeapon   = ChinaCarpetBombWeapon
 375      StartsActive  = Yes
 376    End
 377  
 378    Behavior = HeightDieUpdate ModuleTag_06
 379      TargetHeight = 1.0
 380      TargetHeightIncludesStructures = No
 381    End
 382  
 383    Behavior = SpecialPowerCompletionDie ModuleTag_07
 384      SpecialPowerTemplate = SuperweaponChinaCarpetBomb
 385    End
 386  
 387    Behavior = FXListDie ModuleTag_08
 388      DeathFX = FX_CarpetBomb
 389    End
 390    Behavior = DestroyDie ModuleTag_09
 391      ;nothing
 392    End
 393  
 394  End
 395  
 396  
 397  
 398  ;------------------------------------------------------------------------------
 399  ;------------------------------------------------------------------------------
 400  ;------------------------------------------------------------------------------
 401  Object SpectreHowitzerShell
 402  
 403    ; *** ART Parameters ***
 404    Draw = W3DModelDraw ModuleTag_01
 405      OkToChangeModelColor = Yes
 406      ConditionState = NONE
 407        Model = AVSpectreShell1
 408      End
 409    End
 410  
 411    ; ***DESIGN parameters ***
 412    DisplayName      = OBJECT:Missile
 413    EditorSorting   = SYSTEM
 414    VisionRange = 0.0  
 415    ArmorSet
 416      Conditions      = None
 417      Armor           = ProjectileArmor
 418      DamageFX        = None
 419    End
 420  
 421    ; *** ENGINEERING Parameters ***
 422    KindOf = PROJECTILE
 423    Body = ActiveBody ModuleTag_02
 424      MaxHealth       = 100.0
 425      InitialHealth   = 100.0
 426    End
 427  
 428  
 429    Behavior = HeightDieUpdate ModuleTag_04
 430      TargetHeight = 1.0
 431      TargetHeightIncludesStructures = No
 432      OnlyWhenMovingDown = Yes
 433      InitialDelay                    = 1000 ; Can't explode in the first second so we don't explode on the pad
 434    End
 435  
 436  ; ---- begin Projectile death behaviors
 437    Behavior = InstantDeathBehavior DeathModuleTag_01
 438      DeathTypes = NONE +DETONATED
 439      ; we detonated normally.
 440      FX         = FX_NukeGLA
 441    End
 442    Behavior = InstantDeathBehavior DeathModuleTag_02
 443      DeathTypes = NONE +LASERED
 444      ; shot down by laser.
 445      FX         = FX_GenericMissileDisintegrate
 446      OCL        = OCL_GenericMissileDisintegrate
 447    End
 448    Behavior = InstantDeathBehavior DeathModuleTag_03
 449      DeathTypes = ALL -LASERED -DETONATED
 450      ; shot down by nonlaser.
 451      FX         = FX_GenericMissileDeath
 452    End
 453  ; ---- end Projectile death behaviors
 454   
 455    Behavior = PhysicsBehavior ModuleTag_09
 456      Mass = 1
 457    End
 458  
 459  
 460  
 461  
 462    Behavior = DumbProjectileBehavior ModuleTag_10
 463    End
 464  
 465  
 466  
 467  
 468  
 469  ;  Locomotor = SET_NORMAL SpectreHowitzerShellLocomotor
 470  
 471    Geometry = Cylinder ; Since collision extents can't tilt, this is a little fake
 472    GeometryMajorRadius = 4.0
 473    GeometryHeight = 4.0
 474    GeometryIsSmall = Yes   
 475    
 476     
 477    Scale = 0.6                            ;Scaling
 478  
 479    Shadow = SHADOW_DECAL
 480  End
 481  
 482  
 483  
 484  ;------------------------------------------------------------------------------
 485  Object HumveeMissile
 486  
 487    ; *** ART Parameters ***
 488    Draw = W3DModelDraw ModuleTag_01
 489      OkToChangeModelColor = Yes
 490      DefaultConditionState
 491        Model = UVRockBug_m
 492      End
 493      ConditionState = JAMMED
 494        ParticleSysBone = None SparksMedium
 495      End
 496    End
 497  
 498    ; ***DESIGN parameters ***
 499  
 500    EditorSorting   = SYSTEM
 501    VisionRange = 0.0  
 502    ArmorSet
 503      Conditions      = None
 504      Armor           = ProjectileArmor
 505      DamageFX        = None
 506    End
 507  
 508    ; *** ENGINEERING Parameters ***
 509    KindOf = PROJECTILE SMALL_MISSILE
 510    Body = ActiveBody ModuleTag_02
 511      MaxHealth       = 100.0
 512      InitialHealth   = 100.0
 513  
 514      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
 515      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
 516      ; A projectile is not disabled, but instead loses target and scatters
 517      SubdualDamageCap = 200
 518      SubdualDamageHealRate = 100000
 519      SubdualDamageHealAmount = 50
 520    End
 521  
 522  ; ---- begin Projectile death behaviors
 523    Behavior = InstantDeathBehavior DeathModuleTag_01
 524      DeathTypes = NONE +DETONATED
 525      ; we detonated normally.
 526      ; no FX, just quiet destroy ourselves
 527    End
 528    Behavior = InstantDeathBehavior DeathModuleTag_02
 529      DeathTypes = NONE +LASERED
 530      ; shot down by laser.
 531      FX         = FX_GenericMissileDisintegrate
 532      OCL        = OCL_GenericMissileDisintegrate
 533    End
 534    Behavior = InstantDeathBehavior DeathModuleTag_03
 535      DeathTypes = ALL -LASERED -DETONATED
 536      ; shot down by nonlaser.
 537      FX         = FX_GenericMissileDeath
 538    End
 539  ; ---- end Projectile death behaviors
 540     
 541    Behavior = PhysicsBehavior ModuleTag_06
 542      Mass = 1
 543    End
 544    Behavior = MissileAIUpdate ModuleTag_07
 545      TryToFollowTarget = No 
 546      FuelLifetime = 1000
 547      InitialVelocity = 150                ; in dist/sec
 548      IgnitionDelay = 0
 549      DistanceToTravelBeforeTurning = 3
 550      IgnitionFX = FX_HumveeMissileIgnition
 551    End
 552    Locomotor = SET_NORMAL RocketBuggyMissileLocomotor
 553  
 554    Geometry = Sphere
 555    GeometryIsSmall = Yes
 556    GeometryMajorRadius = 2.0
 557  
 558  End
 559  
 560  ; Missiles used by the Patriot.  This is the projectile attached to PatriotMissileWeapon in Weapon.ini
 561  ;------------------------------------------------------------------------------
 562  Object PatriotMissile
 563  
 564    ; *** ART Parameters ***
 565    Draw = W3DModelDraw ModuleTag_01
 566      OkToChangeModelColor = Yes
 567      DefaultConditionState
 568        Model = AVRaptor_M
 569      End
 570      ConditionState = JAMMED
 571        ParticleSysBone = None SparksMedium
 572      End
 573    End
 574  
 575    ; ***DESIGN parameters ***
 576    DisplayName      = OBJECT:PatriotMissile
 577    EditorSorting   = VEHICLE
 578    VisionRange = 300.0
 579    ShroudClearingRange = 0
 580  
 581    ArmorSet
 582      Conditions      = None
 583      Armor           = ProjectileArmor
 584      DamageFX        = None
 585    End
 586    ; *** ENGINEERING Parameters ***
 587    KindOf = CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
 588    Body = ActiveBody ModuleTag_02
 589      MaxHealth       = 100.0
 590      InitialHealth   = 100.0
 591  
 592      SubdualDamageCap = 200
 593      SubdualDamageHealRate = 100000
 594      SubdualDamageHealAmount = 50
 595    End
 596  
 597  ; ---- begin Projectile death behaviors
 598    Behavior = InstantDeathBehavior DeathModuleTag_01
 599      DeathTypes = NONE +DETONATED
 600      ; we detonated normally.
 601      ; no FX, just quiet destroy ourselves
 602    End
 603    Behavior = InstantDeathBehavior DeathModuleTag_02
 604      DeathTypes = NONE +LASERED
 605      ; shot down by laser.
 606      FX         = FX_GenericMissileDisintegrate
 607      OCL        = OCL_GenericMissileDisintegrate
 608    End
 609    Behavior = InstantDeathBehavior DeathModuleTag_03
 610      DeathTypes = ALL -LASERED -DETONATED
 611      ; shot down by nonlaser.
 612      FX         = FX_GenericMissileDeath
 613    End
 614  ; ---- end Projectile death behaviors
 615      
 616    Behavior = PhysicsBehavior ModuleTag_04
 617      Mass = 1
 618    End
 619    Behavior = MissileAIUpdate ModuleTag_05
 620      TryToFollowTarget       = Yes 
 621      FuelLifetime            = 10000
 622      InitialVelocity         = 50                ; in dist/sec
 623      IgnitionDelay           = 0
 624      DistanceToTravelBeforeTurning = 5
 625      DistanceToTargetForLock = 100  ; If it gets within 100 of the target, it kills the target.
 626    End
 627    Locomotor = SET_NORMAL PatriotMissileLocomotor
 628    Geometry = Sphere
 629    GeometryIsSmall = Yes
 630    GeometryMajorRadius = 2.0
 631  
 632  End
 633  
 634  ;------------------------------------------------------------------------------
 635  Object A10ThunderboltMissile
 636  
 637    ; *** ART Parameters ***
 638    Draw = W3DModelDraw ModuleTag_01
 639      OkToChangeModelColor = Yes
 640      DefaultConditionState
 641        Model = AVWarthog_M
 642        ParticleSysBone = NONE MissileExhaust
 643      End
 644      ConditionState = JAMMED
 645        ParticleSysBone = None SparksMedium
 646      End
 647    End
 648  
 649    ; ***DESIGN parameters ***
 650    DisplayName      = OBJECT:Missile
 651    Side = America
 652    EditorSorting   = SYSTEM
 653    TransportSlotCount = 1                 ;how many "slots" we take in a transport (0 == not transportable)
 654    VisionRange = 0.0  
 655    ArmorSet
 656      Conditions      = None
 657      Armor           = ProjectileArmor
 658      DamageFX        = None
 659    End
 660  
 661    ; *** AUDIO Parameters ***
 662  
 663    ; *** ENGINEERING Parameters ***
 664    KindOf            = PRELOAD CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
 665    Body = ActiveBody ModuleTag_02
 666      MaxHealth       = 100.0
 667      InitialHealth   = 100.0
 668  
 669      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
 670      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
 671      ; A projectile is not disabled, but instead loses target and scatters
 672      SubdualDamageCap = 200
 673      SubdualDamageHealRate = 100000
 674      SubdualDamageHealAmount = 50
 675    End
 676  
 677  ; ---- begin Projectile death behaviors
 678    Behavior = InstantDeathBehavior DeathModuleTag_01
 679      DeathTypes = NONE +DETONATED
 680      ; we detonated normally.
 681      ; no FX, just quiet destroy ourselves
 682    End
 683    Behavior = InstantDeathBehavior DeathModuleTag_02
 684      DeathTypes = NONE +LASERED
 685      ; shot down by laser.
 686      FX         = FX_GenericMissileDisintegrate
 687      OCL        = OCL_GenericMissileDisintegrate
 688    End
 689    Behavior = InstantDeathBehavior DeathModuleTag_03
 690      DeathTypes = ALL -LASERED -DETONATED
 691      ; shot down by nonlaser.
 692      FX         = FX_GenericMissileDeath
 693    End
 694  ; ---- end Projectile death behaviors
 695   
 696  ; The weapon is in OCL.ini.  This makes it do double damage secretly.   
 697  ;  Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
 698  ;    DeathWeapon   = A10ThunderboltMissileWeapon
 699  ;    StartsActive  = Yes
 700  ;  End
 701  
 702    Behavior = PhysicsBehavior ModuleTag_08
 703      Mass = 1
 704    End
 705    Behavior = MissileAIUpdate ModuleTag_09
 706      TryToFollowTarget = Yes 
 707      FuelLifetime = 10000
 708      InitialVelocity = 30                ; in dist/sec
 709      IgnitionDelay = 0
 710      IgnitionFX = FX_A10ThunderboltMissileIgnition
 711    End
 712    ; It's a missile, it needs to hit so it can +DETONATED
 713  ;  Behavior = HeightDieUpdate ModuleTag_10
 714  ;    TargetHeight = 1.0
 715  ;    TargetHeightIncludesStructures = No
 716  ;  End
 717    Locomotor = SET_NORMAL A10ThunderboltMissileLocomotor
 718  
 719    Geometry = Sphere
 720    GeometryIsSmall = Yes
 721    GeometryMajorRadius = 1.0
 722  
 723    Behavior = SpecialPowerCompletionDie ModuleTag_11
 724      SpecialPowerTemplate = SuperweaponA10ThunderboltMissileStrike
 725    End
 726  
 727  ;  Geometry = Sphere
 728   ; GeometryIsSmall = Yes
 729    ;GeometryMajorRadius = 12.0
 730  
 731  End
 732  
 733  
 734  
 735  
 736  
 737  
 738  
 739  ;------------------------------------------------------------------------------
 740  Object RaptorJetMissile
 741  
 742    ; *** ART Parameters ***
 743    Draw = W3DModelDraw ModuleTag_01
 744      OkToChangeModelColor = Yes
 745      DefaultConditionState
 746        Model = AVRaptor_M
 747      End
 748      ConditionState = JAMMED
 749        ParticleSysBone = None SparksMedium
 750      End
 751    End
 752  
 753    ; ***DESIGN parameters ***
 754    DisplayName       = OBJECT:Missile
 755    EditorSorting     = SYSTEM
 756    VisionRange = 0.0  
 757  
 758    ArmorSet
 759      Conditions      = None
 760      Armor           = ProjectileArmor
 761      DamageFX        = None
 762    End
 763    ; *** ENGINEERING Parameters ***
 764    KindOf = PRELOAD CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
 765    Body = ActiveBody ModuleTag_02
 766      MaxHealth       = 100.0
 767      InitialHealth   = 100.0
 768  
 769      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
 770      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
 771      ; A projectile is not disabled, but instead loses target and scatters
 772      SubdualDamageCap = 200
 773      SubdualDamageHealRate = 100000
 774      SubdualDamageHealAmount = 50
 775    End
 776  
 777  ; ---- begin Projectile death behaviors
 778    Behavior = InstantDeathBehavior DeathModuleTag_01
 779      DeathTypes = NONE +DETONATED
 780      ; we detonated normally.
 781      ; no FX, just quiet destroy ourselves
 782    End
 783    Behavior = InstantDeathBehavior DeathModuleTag_02
 784      DeathTypes = NONE +LASERED
 785      ; shot down by laser.
 786      FX         = FX_GenericMissileDisintegrate
 787      OCL        = OCL_GenericMissileDisintegrate
 788    End
 789    Behavior = InstantDeathBehavior DeathModuleTag_03
 790      DeathTypes = ALL -LASERED -DETONATED
 791      ; shot down by nonlaser.
 792      FX         = FX_GenericMissileDeath
 793    End
 794  ; ---- end Projectile death behaviors
 795  
 796    Behavior = PhysicsBehavior ModuleTag_07
 797      Mass = 1
 798    End
 799    Behavior = MissileAIUpdate ModuleTag_08
 800      TryToFollowTarget     = Yes 
 801      FuelLifetime          = 10000
 802      InitialVelocity       = 75                ; in dist/sec
 803      IgnitionDelay         = 30
 804      IgnitionFX            = FX_JetMissileIgnition
 805    End
 806    Locomotor = SET_NORMAL RaptorJetMissileLocomotor
 807  
 808    Geometry = Sphere
 809    GeometryIsSmall = Yes
 810    GeometryMajorRadius = 1.0
 811  
 812  End
 813  
 814  
 815  
 816  
 817  ;------------------------------------------------------------------------------
 818  Object StealthJetMissile
 819  
 820    ; *** ART Parameters ***
 821    Draw = W3DModelDraw ModuleTag_01
 822      OkToChangeModelColor = Yes
 823      DefaultConditionState
 824        Model = AVStealth_M
 825      End
 826      ConditionState = JAMMED
 827        ParticleSysBone = None SparksMedium
 828      End
 829    End
 830  
 831    ; ***DESIGN parameters ***
 832    DisplayName       = OBJECT:Missile
 833    EditorSorting     = SYSTEM
 834    VisionRange       = 0.0  
 835  
 836    ArmorSet
 837      Conditions      = None
 838      Armor           = ProjectileArmor
 839      DamageFX        = None
 840    End
 841  
 842    ; *** ENGINEERING Parameters ***
 843    KindOf = PRELOAD CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
 844    Body = ActiveBody ModuleTag_02
 845      MaxHealth       = 100.0
 846      InitialHealth   = 100.0
 847  
 848      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
 849      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
 850      ; A projectile is not disabled, but instead loses target and scatters
 851      SubdualDamageCap = 200
 852      SubdualDamageHealRate = 100000
 853      SubdualDamageHealAmount = 50
 854    End
 855  
 856  ; ---- begin Projectile death behaviors
 857    Behavior = InstantDeathBehavior DeathModuleTag_01
 858      DeathTypes = NONE +DETONATED
 859      ; we detonated normally.
 860      ; no FX, just quiet destroy ourselves
 861    End
 862    Behavior = InstantDeathBehavior DeathModuleTag_02
 863      DeathTypes = NONE +LASERED
 864      ; shot down by laser.
 865      FX         = FX_GenericMissileDisintegrate
 866      OCL        = OCL_GenericMissileDisintegrate
 867    End
 868    Behavior = InstantDeathBehavior DeathModuleTag_03
 869      DeathTypes = ALL -LASERED -DETONATED
 870      ; shot down by nonlaser.
 871      FX         = FX_GenericMissileDeath
 872    End
 873  ; ---- end Projectile death behaviors
 874  
 875    Behavior        = BunkerBusterBehavior ModuleTag_04
 876      UpgradeRequired               = Upgrade_AmericaBunkerBusters                
 877      DetonationFX                  = FX_BunkerBusterExplosion            ; the big detonation kaboom at the bottom
 878      CrashThroughBunkerFX          = WeaponFX_BunkerBusterIntialImpact   ; the crash bang crunch FX on the way through the bunker ceiling
 879      CrashThroughBunkerFXFrequency = 571                                 ; msec... how often to play the crash bang crunch FX on the way through the bunker ceiling
 880  
 881      SeismicEffectRadius         = 200
 882      SeismicEffectMagnitude      = 5
 883  
 884     ShockwaveWeaponTemplate     =  BunkerBusterShockwaveWeaponSmall
 885     OccupantDamageWeaponTemplate = BunkerBusterAntiTunnelGarrisonWeaponWithABigName
 886  
 887    End
 888  
 889    Behavior = PhysicsBehavior ModuleTag_07
 890      Mass = 1
 891    End
 892    Behavior = MissileAIUpdate ModuleTag_08
 893      TryToFollowTarget     = Yes 
 894      FuelLifetime          = 10000
 895      InitialVelocity       = 75                ; in dist/sec
 896      IgnitionDelay         = 30
 897      IgnitionFX            = FX_JetMissileIgnition
 898      DetonateCallsKill     = Yes
 899      KillSelfDelay         = 2000 ;two seconds of crash bang crunch before we actually detonate
 900    End
 901    Locomotor = SET_NORMAL StealthJetMissileLocomotor
 902  
 903  
 904  ;  Behavior = HeightDieUpdate ModuleTag_09
 905  ;    TargetHeight = -20.0
 906  ;    TargetHeightIncludesStructures = Yes
 907  ;  End
 908  
 909  
 910    Geometry = Sphere
 911    GeometryIsSmall = Yes
 912    GeometryMajorRadius = 1.0
 913  
 914  End
 915  
 916  
 917  
 918  
 919  
 920  
 921  
 922  ;------------------------------------------------------------------------------
 923  Object CarpetBomb
 924  
 925    ; *** ART Parameters ***
 926    Draw = W3DModelDraw ModuleTag_01
 927      DefaultConditionState
 928        Model = EXCarptBmb
 929      End
 930    End
 931  
 932    ; ***DESIGN parameters ***
 933    DisplayName      = OBJECT:CarpetBomb
 934    Side = America
 935    EditorSorting   = SYSTEM
 936    TransportSlotCount = 1                 ;how many "slots" we take in a transport (0 == not transportable)
 937    VisionRange = 300.0  
 938    ArmorSet
 939      Conditions      = None
 940      Armor           = ProjectileArmor
 941      DamageFX        = None
 942    End
 943  
 944    ; *** AUDIO Parameters ***
 945    SoundFallingFromPlane = DaisyCutterWeapon
 946  
 947    ; *** ENGINEERING Parameters ***
 948    KindOf            = PROJECTILE
 949    Body = ActiveBody ModuleTag_02
 950      MaxHealth       = 100.0
 951      InitialHealth   = 100.0
 952    End
 953  
 954    Behavior = AIUpdateInterface ModuleTag_03
 955    End
 956    Locomotor = SET_NORMAL None
 957  
 958    Behavior = PhysicsBehavior ModuleTag_04
 959  
 960      Mass                  = 75.0
 961      AerodynamicFriction   = 1     ; this is now friction-per-sec
 962      ForwardFriction       = 33    ; this is now friction-per-sec
 963      CenterOfMassOffset    = 2     ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
 964    End
 965  
 966    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
 967      DeathWeapon   = CarpetBombWeapon
 968      StartsActive  = Yes
 969    End
 970  
 971    Behavior = HeightDieUpdate ModuleTag_06
 972      TargetHeight = 1.0
 973      TargetHeightIncludesStructures = No
 974    End
 975  
 976    Behavior = SpecialPowerCompletionDie ModuleTag_07
 977      SpecialPowerTemplate = SuperweaponCarpetBomb
 978    End
 979  
 980    Behavior = FXListDie ModuleTag_08
 981      DeathFX = FX_CarpetBomb
 982    End
 983    Behavior = DestroyDie ModuleTag_09
 984      ;nothing
 985    End
 986  
 987  End
 988  
 989  ;------------------------------------------------------------------------------
 990  Object AuroraBomb
 991  
 992    ; *** ART Parameters ***
 993    Draw = W3DModelDraw ModuleTag_01
 994      DefaultConditionState
 995        Model = EXCarptBmb
 996      End
 997    End
 998  
 999    ; ***DESIGN parameters ***
1000    Side = America
1001    EditorSorting     = SYSTEM
1002    ArmorSet
1003      Conditions      = None
1004      Armor           = ProjectileArmor
1005      DamageFX        = None
1006    End
1007    VisionRange       = 0.0  
1008  
1009    ; *** AUDIO Parameters ***
1010  
1011    ; *** ENGINEERING Parameters ***
1012    KindOf            = PROJECTILE
1013    Body              = ActiveBody ModuleTag_02
1014      MaxHealth       = 100.0
1015      InitialHealth   = 100.0
1016    End
1017  
1018    Behavior              = PhysicsBehavior ModuleTag_03
1019      Mass                = 75.0
1020      AerodynamicFriction = 2     ; this is now friction-per-sec
1021      ForwardFriction     = 2     ; this is now friction-per-sec
1022      CenterOfMassOffset  = 2     ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
1023    End
1024  
1025    ; it may seem odd to have a "bomb" with a Locomotor, especially a Thrust locomotor,
1026    ; but there's a good reason: the Aurora moves so freakin' fast that it's really
1027    ; hard to (1) find a reliable drop location, and (2) actually get it close enough to
1028    ; that location. So we cheat: just get fairly close, then let the "bomb" do a little (subtle)
1029    ; navigation on the way down. This works pretty well and actually looks much better
1030    ; than you might think. (srj)
1031    Behavior = MissileAIUpdate ModuleTag_04
1032      TryToFollowTarget   = No 
1033      FuelLifetime        = 0
1034      IgnitionDelay       = 0
1035      InitialVelocity     = 0                ; in dist/sec
1036      DistanceToTravelBeforeTurning = 0
1037      DistanceToTargetBeforeDiving  = 0
1038    End
1039    Locomotor = SET_NORMAL AuroraBombLocomotor   ; yes, that's right.
1040  
1041    Geometry = Sphere
1042    GeometryIsSmall = Yes
1043    GeometryMajorRadius = 2.0
1044  
1045  End
1046  
1047  ;------------------------------------------------------------------------------
1048  ; this is the "standard" mine used for building upgrades
1049  Object ChinaStandardMine
1050  
1051    ; *** ART Parameters ***
1052    Draw = W3DModelDraw ModuleTag_01
1053      OkToChangeModelColor = Yes
1054      ; NOTE: ParticleSysBone doesn't work correctly with DefaultConditionState!
1055      ; fix someday! (srj)
1056      ConditionState = NONE
1057        Model           = EXAMineGroup
1058        ParticleSysBone = Mine01 MineFX
1059        ParticleSysBone = Mine02 MineFX
1060        ParticleSysBone = Mine03 MineFX
1061        ParticleSysBone = Mine04 MineFX
1062        ParticleSysBone = Mine05 MineFX
1063        ParticleSysBone = Mine06 MineFX
1064        ParticleSysBone = Mine07 MineFX
1065        ParticleSysBone = Mine08 MineFX
1066      End
1067      ConditionState = RUBBLE
1068        Model = None
1069      End
1070    End
1071  
1072    ; ***DESIGN parameters ***
1073    DisplayName       = OBJECT:StructureMine
1074    EditorSorting     = MISC_MAN_MADE
1075    KindOf            = STICK_TO_TERRAIN_SLOPE IMMOBILE MINE NO_HEAL_ICON
1076    ArmorSet
1077      Conditions      = None
1078      Armor           = MineArmor
1079      DamageFX        = None
1080    End
1081  
1082    ; *** ENGINEERING Parameters ***  
1083    Body = ActiveBody ModuleTag_02
1084      MaxHealth       = 100.0
1085      InitialHealth   = 100.0
1086    End
1087    
1088    Behavior = StealthUpdate ModuleTag_03
1089      StealthDelay                = 0 ; msec
1090      StealthForbiddenConditions  = NONE
1091      FriendlyOpacityMin          = 0.0%
1092      FriendlyOpacityMax          = 0.0%
1093      InnateStealth               = Yes
1094      OrderIdleEnemiesToAttackMeUponReveal  = No
1095    End
1096  
1097    ; this is a misleading name, since it's really single-Mine Behavior...
1098    Behavior = MinefieldBehavior     ModuleTag_04
1099      DetonationWeapon            = StructureMineWeapon        ; what happens when we detonate
1100      DetonatedBy                 = ENEMIES NEUTRAL
1101      ; we no longer want the "scoot" behavior. it looks funky with current art. (srj)
1102      ;ScootFromStartingPointTime  = 500
1103      RepeatDetonateMoveThresh    = 5.0
1104      NumVirtualMines             = 8
1105      Regenerates                 = Yes            ; Standard mines DO regenerate.
1106      StopsRegenAfterCreatorDies  = Yes
1107      DegenPercentPerSecondAfterCreatorDies = 3.33%  ; take about 30 seconds to die.
1108    End
1109  
1110    ; Standard mines DO heal.
1111    Behavior = AutoHealBehavior ModuleTag_05
1112      StartsActive      = Yes
1113      HealingAmount     = 2
1114      HealingDelay      = 5000 ; msec
1115      StartHealingDelay = 15000 ; wait this long after we are damaged to start healing
1116    End
1117  
1118    Geometry            = CYLINDER
1119    GeometryMajorRadius = 30.0
1120    GeometryHeight      = 1.0
1121    GeometryIsSmall     = No
1122    
1123  End
1124  
1125  ;------------------------------------------------------------------------------
1126  ; this is the "EMP" mine used for building upgrades
1127  Object ChinaEMPMine
1128  
1129    ; *** ART Parameters ***
1130    Draw = W3DModelDraw ModuleTag_01
1131      OkToChangeModelColor = Yes
1132      ; NOTE: ParticleSysBone doesn't work correctly with DefaultConditionState!
1133      ; fix someday! (srj)
1134      ConditionState = NONE
1135        Model           = EXAMineGroup
1136        ParticleSysBone = Mine01 MineFXPurple 
1137        ParticleSysBone = Mine02 MineFXPurple 
1138        ParticleSysBone = Mine03 MineFXPurple 
1139        ParticleSysBone = Mine04 MineFXPurple 
1140        ParticleSysBone = Mine05 MineFXPurple 
1141        ParticleSysBone = Mine06 MineFXPurple 
1142        ParticleSysBone = Mine07 MineFXPurple 
1143        ParticleSysBone = Mine08 MineFXPurple 
1144      End
1145      ConditionState = RUBBLE
1146        Model = None
1147      End
1148    End
1149  
1150    ; ***DESIGN parameters ***
1151    DisplayName       = OBJECT:StructureEMPMine
1152    EditorSorting     = MISC_MAN_MADE
1153    KindOf            = STICK_TO_TERRAIN_SLOPE IMMOBILE MINE NO_HEAL_ICON
1154    ArmorSet
1155      Conditions      = None
1156      Armor           = MineArmor
1157      DamageFX        = None
1158    End
1159  
1160    ; *** ENGINEERING Parameters ***  
1161    Body = ActiveBody ModuleTag_02
1162      MaxHealth       = 100.0
1163      InitialHealth   = 100.0
1164    End
1165    
1166    Behavior = StealthUpdate ModuleTag_03
1167      StealthDelay                = 0 ; msec
1168      StealthForbiddenConditions  = NONE
1169      FriendlyOpacityMin          = 0.0%
1170      FriendlyOpacityMax          = 0.0%
1171      InnateStealth               = Yes
1172      OrderIdleEnemiesToAttackMeUponReveal  = No
1173    End
1174  
1175   ;this is a misleading name, since it's really single-Mine Behavior...
1176    Behavior = MinefieldBehavior     ModuleTag_04
1177      ;DetonationWeapon            = StructureUpgradeEMPMineWeapon        ; what happens when we detonate
1178      DetonationWeapon            = NeutronMineWeapon
1179      DetonatedBy                 = ENEMIES NEUTRAL
1180      RepeatDetonateMoveThresh    = 5.0
1181      NumVirtualMines             = 8
1182      Regenerates                 = Yes            ; Standard mines DO regenerate.
1183      StopsRegenAfterCreatorDies  = Yes
1184      DegenPercentPerSecondAfterCreatorDies = 3.33%  ; take about 30 seconds to die.
1185      ;CreationList = OCL_EMPMineEffectSpheroid
1186    End
1187  
1188    ; Standard mines DO heal.
1189    Behavior = AutoHealBehavior ModuleTag_05
1190      StartsActive      = Yes
1191      HealingAmount     = 2
1192      HealingDelay      = 5000 ; msec
1193      StartHealingDelay = 15000 ; wait this long after we are damaged to start healing
1194    End
1195  
1196  
1197  
1198    Geometry            = CYLINDER
1199    GeometryMajorRadius = 30.0
1200    GeometryHeight      = 1.0
1201    GeometryIsSmall     = No
1202    
1203  End
1204  
1205  Object NeutronBlastObject
1206  
1207    ; *** ART Parameters ***
1208    ; ***DESIGN parameters ***
1209    DisplayName        = OBJECT:NeutronMissile
1210    KindOf             = UNATTACKABLE
1211    EditorSorting      = SYSTEM
1212    VisionRange = 300.0  
1213    ShroudClearingRange = 0
1214    TransportSlotCount = 10
1215  
1216    ; *** ENGINEERING Parameters ***
1217    Body = ActiveBody ModuleTag_02
1218      MaxHealth        = 99999999.0
1219      InitialHealth    = 99999999.0
1220    End
1221  
1222    Behavior = HeightDieUpdate ModuleTag_04
1223      TargetHeight        = 100.0
1224      TargetHeightIncludesStructures = No
1225      OnlyWhenMovingDown  = No
1226      SnapToGroundOnDeath = Yes
1227      InitialDelay                    = 0 ; Can't explode in the first second so we don't explode on the pad
1228    End
1229    
1230    Behavior = NeutronBlastBehavior ModuleTag_06
1231      BlastRadius = 20
1232      AffectAirborne = No
1233      AffectAllies = No
1234    End
1235  
1236  ;  Behavior = FXListDie ModuleTag_07
1237   ;   DeathFX = Neutron_WeaponFX_Mine
1238   ;   OrientToObject = Yes
1239   ; End
1240  
1241    Geometry            = CYLINDER
1242    GeometryMajorRadius = 1.0
1243    GeometryHeight      = 1.0
1244    GeometryIsSmall     = Yes
1245  End
1246  
1247  
1248  ;------------------------------------------------------------------------------
1249  Object ChinaClusterMine
1250  
1251    ; *** ART Parameters ***
1252    Draw = W3DModelDraw ModuleTag_01
1253      OkToChangeModelColor = Yes
1254      ; NOTE: ParticleSysBone doesn't work correctly with DefaultConditionState!
1255      ; fix someday! (srj)
1256      ConditionState = NONE
1257        Model = EXAMineGroup
1258        ParticleSysBone = Mine01 MineFX
1259        ParticleSysBone = Mine02 MineFX
1260        ParticleSysBone = Mine03 MineFX
1261        ParticleSysBone = Mine04 MineFX
1262        ParticleSysBone = Mine05 MineFX
1263        ParticleSysBone = Mine06 MineFX
1264        ParticleSysBone = Mine07 MineFX
1265        ParticleSysBone = Mine08 MineFX
1266      End
1267      ConditionState = RUBBLE
1268        Model = None
1269      End
1270    End
1271  
1272    ; ***DESIGN parameters ***
1273    DisplayName       = OBJECT:ClusterMine
1274    EditorSorting     = MISC_MAN_MADE
1275    KindOf            = STICK_TO_TERRAIN_SLOPE IMMOBILE MINE NO_HEAL_ICON
1276    ArmorSet
1277      Conditions      = None
1278      Armor           = MineArmor
1279      DamageFX        = None
1280    End
1281  
1282    ; *** ENGINEERING Parameters ***  
1283    Body = ActiveBody ModuleTag_02
1284      MaxHealth       = 100.0
1285      InitialHealth   = 100.0
1286    End
1287    
1288    Behavior = StealthUpdate ModuleTag_03
1289      StealthDelay                = 0                  ; msec
1290      StealthForbiddenConditions  = NONE
1291      FriendlyOpacityMin          = 0.0%
1292      FriendlyOpacityMax          = 0.0%
1293      InnateStealth               = Yes
1294      OrderIdleEnemiesToAttackMeUponReveal  = No
1295    End
1296  
1297    ; this is a misleading name, since it's really single-Mine Behavior...
1298    Behavior = MinefieldBehavior     ModuleTag_04
1299      DetonationWeapon            = ClusterMineWeapon        ; what happens when we detonate
1300      DetonatedBy                 = ENEMIES NEUTRAL
1301      ScootFromStartingPointTime  = 1000
1302      RepeatDetonateMoveThresh    = 5.0
1303      NumVirtualMines             = 8
1304      Regenerates                 = No            ; Cluster mines do not regenerate.
1305    End
1306    Geometry            = CYLINDER
1307    GeometryMajorRadius = 30.0
1308    GeometryHeight      = 1.0
1309    GeometryIsSmall     = No
1310    
1311  End
1312  
1313  ;------------------------------------------------------------------------------
1314  Object ClusterMinesBomb
1315  
1316    ; *** ART Parameters ***
1317    Draw = W3DModelDraw ModuleTag_01
1318      OkToChangeModelColor = Yes
1319      DefaultConditionState
1320        Model         = EXAMine_A
1321      End
1322    End
1323  
1324    ; ***DESIGN parameters ***
1325    DisplayName           = OBJECT:ClusterMinesBomb
1326    Side                  = China
1327    EditorSorting         = SYSTEM
1328    TransportSlotCount    = 1                 ;how many "slots" we take in a transport (0 == not transportable)
1329    VisionRange           = 0
1330    ArmorSet
1331      Conditions      = None
1332      Armor           = ProjectileArmor
1333      DamageFX        = None
1334    End
1335  
1336    ; *** AUDIO Parameters ***
1337    
1338    ; *** ENGINEERING Parameters ***
1339    KindOf            = PROJECTILE  
1340    Body = ActiveBody ModuleTag_02
1341      MaxHealth       = 100.0
1342      InitialHealth   = 100.0
1343    End
1344  
1345    ; alas, this DOES need ai...
1346    Behavior = AIUpdateInterface ModuleTag_03
1347    End
1348  
1349    Locomotor = SET_NORMAL None
1350  
1351    Behavior = PhysicsBehavior ModuleTag_04
1352      Mass                  = 75.0
1353      AerodynamicFriction   = 1     ; this is now friction-per-sec
1354      ForwardFriction       = 33    ; this is now friction-per-sec
1355      CenterOfMassOffset    = 2     ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
1356    End
1357  
1358    Behavior = GenerateMinefieldBehavior ModuleTag_05
1359      MineName                = ChinaClusterMine
1360      DistanceAroundObject    = 80
1361      GenerateOnlyOnDeath     = Yes
1362      SmartBorder             = Yes
1363      SmartBorderSkipInterior = No
1364      AlwaysCircular          = Yes
1365      GenerationFX            = WeaponFX_ClusterMineImpact
1366    End
1367  
1368  
1369    Behavior = HeightDieUpdate ModuleTag_06
1370      TargetHeight = 60.0
1371      TargetHeightIncludesStructures = No
1372    End
1373  
1374    Behavior = DestroyDie ModuleTag_07
1375      ;nothing
1376    End
1377  
1378    Geometry = SPHERE                      ;Collision geometry
1379    GeometryMajorRadius = 1.0              ;Collision major radius
1380    GeometryMinorRadius = 1.0              ;Collision minor radius
1381    GeometryHeight = 1.0                   ;Height for geometry
1382    GeometryIsSmall = Yes                  ;Is small geometry
1383  
1384  End
1385  
1386  
1387  ;------------------------------------------------------------------------------
1388  Object EMPPulseBomb
1389  
1390    ; *** ART Parameters ***
1391    Draw = W3DModelDraw ModuleTag_01
1392      OkToChangeModelColor = Yes
1393      DefaultConditionState
1394        Model         = EXAMine_A
1395      End
1396    End
1397  
1398    ; ***DESIGN parameters ***
1399    DisplayName           = OBJECT:EMPPulseBomb
1400    Side                  = China
1401    EditorSorting         = SYSTEM
1402    TransportSlotCount    = 1                 ;how many "slots" we take in a transport (0 == not transportable)
1403    VisionRange           = 0
1404    ArmorSet
1405      Conditions      = None
1406      Armor           = ProjectileArmor
1407      DamageFX        = None
1408    End
1409  
1410    ; *** AUDIO Parameters ***
1411    
1412    ; *** ENGINEERING Parameters ***
1413    KindOf            = PROJECTILE  
1414    Body = ActiveBody ModuleTag_02
1415      MaxHealth       = 100.0
1416      InitialHealth   = 100.0
1417    End
1418  
1419    ; alas, this DOES need ai...
1420    Behavior = AIUpdateInterface ModuleTag_03
1421    End
1422  
1423    Locomotor = SET_NORMAL None
1424  
1425    Behavior = PhysicsBehavior ModuleTag_04
1426      Mass                  = 75.0
1427      AerodynamicFriction   = 1     ; this is now friction-per-sec
1428      ForwardFriction       = 33    ; this is now friction-per-sec
1429      CenterOfMassOffset    = 2     ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
1430    End
1431  
1432  
1433    Behavior = HeightDieUpdate ModuleTag_05
1434      TargetHeight = 15.0
1435      TargetHeightIncludesStructures = No
1436    End
1437  
1438    Behavior = CreateObjectDie ModuleTag_06
1439      CreationList = OCL_EMPPulseEffectSpheroids
1440    End
1441  
1442    Behavior = FXListDie ModuleTag_07
1443      DeathFX = WeaponFX_EMPPulseImpact
1444      OrientToObject = No
1445    End
1446  
1447    Behavior = DestroyDie ModuleTag_08
1448      ;nothing
1449    End
1450  
1451    Geometry = SPHERE                      ;Collision geometry
1452    GeometryMajorRadius = 1.0              ;Collision major radius
1453    GeometryMinorRadius = 1.0              ;Collision minor radius
1454    GeometryHeight = 1.0                   ;Height for geometry
1455    GeometryIsSmall = Yes                  ;Is small geometry
1456  
1457  End
1458  
1459  
1460  
1461  ;------------------------------------------------------------------------------
1462  Object BlackMarketNuke
1463  
1464    ; *** ART Parameters ***
1465    Draw = W3DModelDraw ModuleTag_01
1466      OkToChangeModelColor = Yes
1467      DefaultConditionState
1468        Model = AVBomber_B
1469      End
1470    End
1471  
1472    ; ***DESIGN parameters ***
1473    DisplayName         = OBJECT:BlackMarketNuke
1474    Side                = GLA
1475    EditorSorting       = SYSTEM
1476    TransportSlotCount  = 1                 ;how many "slots" we take in a transport (0 == not transportable)
1477    ArmorSet
1478      Conditions        = None
1479      Armor             = ProjectileArmor
1480      DamageFX          = None
1481    End
1482  
1483    ; *** AUDIO Parameters ***
1484    
1485    ; *** ENGINEERING Parameters ***
1486    KindOf            = PROJECTILE
1487    Body = ActiveBody ModuleTag_02
1488      MaxHealth       = 100.0
1489      InitialHealth   = 100.0
1490    End
1491    
1492    Behavior = AIUpdateInterface ModuleTag_03
1493    End
1494  
1495    Locomotor = SET_NORMAL None
1496  
1497    Behavior = PhysicsBehavior ModuleTag_04
1498      Mass                  = 75.0
1499      AerodynamicFriction   = 1     ; this is now friction-per-sec
1500      ForwardFriction       = 33    ; this is now friction-per-sec
1501      CenterOfMassOffset    = 2     ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
1502    End
1503  
1504    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
1505      DeathWeapon   = BlackMarketNukeWeapon
1506      StartsActive  = Yes
1507    End
1508  
1509    Behavior = HeightDieUpdate ModuleTag_06
1510      TargetHeight = 1.0
1511      TargetHeightIncludesStructures = No
1512    End
1513  
1514    Behavior = SpecialPowerCompletionDie ModuleTag_07
1515      SpecialPowerTemplate = SuperweaponBlackMarketNuke
1516    End
1517  
1518    Behavior = DestroyDie ModuleTag_08
1519      ;nothing
1520    End
1521  
1522    Behavior = FXListDie ModuleTag_09
1523      DeathFX = FX_NukeGLA
1524      OrientToObject = No
1525    End
1526  
1527    Geometry = Sphere
1528    GeometryIsSmall = Yes
1529    GeometryMajorRadius = 12.0
1530  
1531  End
1532  
1533  ;------------------------------------------------------------------------------
1534  Object AnthraxBomb
1535  
1536    ; *** ART Parameters ***
1537    Draw = W3DModelDraw ModuleTag_01
1538      OkToChangeModelColor = Yes
1539      DefaultConditionState
1540        Model = AVBomber_B
1541      End
1542    End
1543  
1544    ; ***DESIGN parameters ***
1545    DisplayName         = OBJECT:AnthraxBomb
1546    Side                = GLA
1547    EditorSorting       = SYSTEM
1548    TransportSlotCount  = 1                 ;how many "slots" we take in a transport (0 == not transportable)
1549    VisionRange         = 300.0  
1550    ShroudClearingRange = 0
1551    ArmorSet
1552      Conditions      = None
1553      Armor           = ProjectileArmor
1554      DamageFX        = None
1555    End
1556  
1557    ; *** AUDIO Parameters ***
1558    SoundFallingFromPlane = DaisyCutterWeapon
1559      
1560    ; *** ENGINEERING Parameters ***
1561    KindOf            = PROJECTILE
1562    Body = ActiveBody ModuleTag_02
1563      MaxHealth       = 100.0
1564      InitialHealth   = 100.0
1565    End
1566    
1567    Behavior = AIUpdateInterface ModuleTag_03
1568    End
1569    Locomotor = SET_NORMAL None
1570  
1571    Behavior = PhysicsBehavior ModuleTag_04
1572      Mass                  = 75.0
1573      AerodynamicFriction   = 1  ; this is now friction-per-sec
1574      ForwardFriction       = 33     ; this is now friction-per-sec
1575      CenterOfMassOffset    = 2  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
1576    End
1577  
1578    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
1579      DeathWeapon   = AnthraxBombWeapon
1580      StartsActive  = Yes
1581    End
1582  
1583    Behavior = HeightDieUpdate ModuleTag_06
1584      TargetHeight = 40.0
1585      TargetHeightIncludesStructures = No
1586    End
1587  
1588    Behavior = SpecialPowerCompletionDie ModuleTag_07
1589      SpecialPowerTemplate = SuperweaponAnthraxBomb
1590    End
1591    Behavior = DestroyDie ModuleTag_08
1592      ;nothing
1593    End
1594  
1595     Behavior = FXListDie ModuleTag_09
1596      DeathFX = FX_AnthraxBomb
1597    End
1598  
1599  ;  Geometry = Sphere
1600   ; GeometryIsSmall = Yes
1601    ;GeometryMajorRadius = 12.0
1602  
1603  End
1604  
1605  ;------------------------------------------------------------------------------
1606  Object DaisyCutterBomb
1607  
1608    ; *** ART Parameters ***
1609    Draw = W3DModelDraw ModuleTag_01
1610      OkToChangeModelColor = Yes
1611      DefaultConditionState
1612        Model = AVBomber_B
1613      End
1614    End
1615  
1616    ; ***DESIGN parameters ***
1617    DisplayName         = OBJECT:DaisyCutterBomb
1618    EditorSorting       = SYSTEM
1619    TransportSlotCount  = 10                 ;how many "slots" we take in a transport (0 == not transportable)
1620    VisionRange         = 300.0  
1621    ShroudClearingRange = 0
1622    ArmorSet
1623      Conditions      = None
1624      Armor           = ProjectileArmor
1625      DamageFX        = None
1626    End
1627  
1628    ; *** AUDIO Parameters ***
1629    SoundFallingFromPlane = DaisyCutterWeapon
1630    
1631    ; *** ENGINEERING Parameters ***
1632    KindOf            = PROJECTILE
1633    Body = ActiveBody ModuleTag_02
1634      MaxHealth       = 100.0
1635      InitialHealth   = 100.0
1636    End
1637  
1638    Behavior = CreateObjectDie ModuleTag_03
1639      CreationList = OCL_DaisyCutterExplode
1640    End
1641    Behavior = FXListDie ModuleTag_04
1642      DeathFX = FX_DaisyCutterExplode
1643    End
1644    Behavior = DestroyDie ModuleTag_05
1645      ;nothing
1646    End
1647       
1648    Behavior = AIUpdateInterface ModuleTag_06
1649    End
1650    Locomotor = SET_NORMAL None
1651    Behavior = PhysicsBehavior ModuleTag_07
1652      Mass                = 75.0
1653      AerodynamicFriction = 1  ; this is now friction-per-sec
1654      ForwardFriction     = 33     ; this is now friction-per-sec
1655      CenterOfMassOffset  = 2  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
1656    End
1657    Behavior = HeightDieUpdate ModuleTag_08
1658      TargetHeight = 50.0
1659      TargetHeightIncludesStructures = Yes
1660    End
1661  
1662    Behavior = SpecialPowerCompletionDie ModuleTag_09
1663      SpecialPowerTemplate = SuperweaponDaisyCutter
1664    End
1665  
1666    Geometry = Sphere
1667    GeometryIsSmall = Yes
1668    GeometryMajorRadius = 12.0
1669  
1670  End
1671  
1672  ;------------------------------------------------------------------------------
1673  Object DaisyCutterGas
1674  
1675    ; *** ART Parameters ***
1676  ;  Draw = W3DModelDraw
1677  ;;    ConditionState      = NONE
1678  ;      Model             = PMDumpst04
1679  ;    End
1680  ;  End
1681  
1682    ; *** DESIGN Parameters ***
1683  
1684    ; *** ENGINEERING Parameters ***
1685    KindOf = IMMOBILE
1686    Body                  = ActiveBody ModuleTag_01
1687      MaxHealth           = 1.0
1688      InitialHealth       = 1.0
1689    End
1690  
1691    Behavior = PhysicsBehavior ModuleTag_02
1692      Mass                = 150.0
1693      AerodynamicFriction = 7  ; this is now friction-per-sec
1694      ForwardFriction     = 200   ; this is now friction-per-sec
1695    End
1696    Behavior = HeightDieUpdate ModuleTag_03
1697      TargetHeight                     = 40.0
1698      TargetHeightIncludesStructures   = Yes
1699      DestroyAttachedParticlesAtHeight = 41.0   ; Hack, todo remove this
1700    End
1701    Behavior = SlowDeathBehavior ModuleTag_04
1702      DestructionDelay        = 1000
1703      DestructionDelayVariance = 100
1704      FX                  = INITIAL FX_DaisyCutterIgnite
1705      FX                  = FINAL   FX_DaisyCutterFinalExplosion
1706      Weapon              = MIDPOINT   DaisyCutterFlameWeapon    ; Just a spot of flame to light trees on fire
1707      Weapon              = FINAL   DaisyCutterDetonationWeapon
1708    End
1709  
1710  End
1711  
1712  ;------------------------------------------------------------------------------
1713  Object NeutronMissile
1714  
1715    ; *** ART Parameters ***
1716    Draw               = W3DModelDraw ModuleTag_01
1717      OkToChangeModelColor = Yes
1718      ConditionState   = NONE
1719        Model          = NBNRocket
1720      End
1721      ConditionState   = DAMAGED REALLYDAMAGED RUBBLE
1722        Model          = NONE
1723      End
1724      
1725    End
1726  
1727    ; ***DESIGN parameters ***
1728    DisplayName        = OBJECT:NeutronMissile
1729    KindOf             = UNATTACKABLE
1730    EditorSorting      = SYSTEM
1731    VisionRange = 300.0  
1732    ShroudClearingRange = 0
1733    TransportSlotCount = 10
1734    ArmorSet
1735      Conditions       = None
1736      Armor            = ProjectileArmor
1737      DamageFX         = None
1738    End
1739  
1740    ; *** AUDIO Parameters ***
1741    ; SoundFallingFromPlane = DaisyCutterWeapon
1742      
1743    ; *** ENGINEERING Parameters ***
1744    Body = ActiveBody ModuleTag_02
1745      MaxHealth        = 99999999.0
1746      InitialHealth    = 99999999.0
1747    End
1748  
1749    Behavior = NeutronMissileUpdate ModuleTag_03
1750      DistanceToTravelBeforeTurning = 300       ; goes straight up a long ways first
1751      MaxTurnRate = 7200                        ; huge, since it turns off-camera
1752      ForwardDamping = 0.1
1753      RelativeSpeed = 2.0
1754      LaunchFX = FX_NeutronMissileLaunch
1755      IgnitionFX = FX_NeutronMissileIgnition
1756      TargetFromDirectlyAbove = 500      ; aim for an intermed spot directly above the target, so we come straight down onto it
1757      SpecialAccelFactor = 1
1758      SpecialSpeedTime = 1500
1759      SpecialSpeedHeight = 160
1760      SpecialJitterDistance = 0.4
1761      DeliveryDecalRadius = 210
1762      DeliveryDecal
1763        Texture           = SCCNuclearMissile_China
1764        Style             = SHADOW_ALPHA_DECAL
1765        OpacityMin        = 25%
1766        OpacityMax        = 50%
1767        OpacityThrobTime  = 500
1768        Color             = R:255 G:0 B:0 A:255 
1769        OnlyVisibleToOwningPlayer = Yes
1770      End
1771    End
1772  
1773    Behavior = HeightDieUpdate ModuleTag_04
1774      TargetHeight        = 100.0
1775      TargetHeightIncludesStructures = No
1776      OnlyWhenMovingDown  = Yes
1777      SnapToGroundOnDeath = Yes
1778      InitialDelay                    = 1000 ; Can't explode in the first second so we don't explode on the pad
1779    End
1780  
1781    Behavior = SpecialPowerCompletionDie ModuleTag_05
1782      SpecialPowerTemplate = SuperweaponNeutronMissile
1783    End
1784  
1785    Behavior = NeutronMissileSlowDeathBehavior ModuleTag_06
1786      DestructionDelay    = 3501
1787      ScorchMarkSize      = 320
1788      FXList              = FX_Nuke
1789      
1790      Blast1Enabled       = Yes
1791      Blast1Delay         = 580     ;in milliseconds
1792      Blast1ScorchDelay   = 100     ;in milliseconds
1793      Blast1InnerRadius   = 60.0    ;objects inside this get the full damage
1794      Blast1OuterRadius   = 60.0    ;objects inside this get some of the full damage
1795      Blast1MaxDamage     = 0.0     ;damage within inner radius of blast
1796      Blast1MinDamage     = 0.0     ;always do at least this much damage to objects
1797      Blast1ToppleSpeed   = 0.5     ;higher #'s topple faster
1798      Blast1PushForce     = 10.0    ;higher #'s push more
1799      
1800      Blast2Enabled       = Yes
1801      Blast2Delay         = 660    ;in milliseconds
1802      Blast2ScorchDelay   = 180     ;in milliseconds
1803      Blast2InnerRadius   = 90.0    ;objects inside this get the full damage
1804      Blast2OuterRadius   = 90.0    ;objects inside this get some of the full damage
1805      Blast2MaxDamage     = 0.0     ;damage within inner radius of blast
1806      Blast2MinDamage     = 0.0     ;always do at least this much damage to objects
1807      Blast2ToppleSpeed   = 0.45    ;higher #'s topple faster
1808      Blast2PushForce     = 8.0     ;higher #'s push more
1809      
1810      Blast3Enabled       = Yes
1811      Blast3Delay         = 720    ;in milliseconds
1812      Blast3ScorchDelay   = 260     ;in milliseconds
1813      Blast3InnerRadius   = 120.0   ;objects inside this get the full damage
1814      Blast3OuterRadius   = 120.0   ;objects inside this get some of the full damage
1815      Blast3MaxDamage     = 0.0     ;damage within inner radius of blast
1816      Blast3MinDamage     = 0.0     ;always do at least this much damage to objects
1817      Blast3ToppleSpeed   = 0.42    ;higher #'s topple faster
1818      Blast3PushForce     = 6.0     ;higher #'s push more
1819  
1820      Blast4Enabled       = Yes
1821      Blast4Delay         = 850    ;in milliseconds
1822      Blast4ScorchDelay   = 340     ;in milliseconds
1823      Blast4InnerRadius   = 150.0   ;objects inside this get the full damage
1824      Blast4OuterRadius   = 150.0   ;objects inside this get some of the full damage
1825      Blast4MaxDamage     = 0.0     ;damage within inner radius of blast
1826      Blast4MinDamage     = 0.0     ;always do at least this much damage to objects
1827      Blast4ToppleSpeed   = 0.40    ;higher #'s topple faster
1828      Blast4PushForce     = 6.0     ;higher #'s push more
1829  
1830      Blast5Enabled       = Yes
1831      Blast5Delay         = 1000    ;in milliseconds
1832      Blast5ScorchDelay   = 420     ;in milliseconds
1833      Blast5InnerRadius   = 180.0   ;objects inside this get the full damage
1834      Blast5OuterRadius   = 180.0   ;objects inside this get some of the full damage
1835      Blast5MaxDamage     = 0.0     ;damage within inner radius of blast
1836      Blast5MinDamage     = 0.0     ;always do at least this much damage to objects
1837      Blast5ToppleSpeed   = 0.38    ;higher #'s topple faster
1838      Blast5PushForce     = 6.0     ;higher #'s push more
1839      
1840      Blast6Enabled       = Yes
1841      Blast6Delay         = 1180    ;in milliseconds
1842      Blast6ScorchDelay   = 500     ;in milliseconds
1843      Blast6InnerRadius   = 60.0    ;objects inside this get the full damage
1844      Blast6OuterRadius   = 210.0   ;objects inside this get some of the full damage
1845      Blast6MaxDamage     = 3500.0  ;damage within inner radius of blast
1846      Blast6MinDamage     = 300.0   ;always do at least this much damage to objects
1847      Blast6ToppleSpeed   = 0.35    ;higher #'s topple faster
1848      Blast6PushForce     = 4.0     ;higher #'s push more
1849  
1850      Blast7Enabled       = Yes
1851      Blast7Delay         = 999999  ;in milliseconds, don't do the damage wave
1852      Blast7ScorchDelay   = 620     ;in milliseconds
1853      Blast7OuterRadius   = 210.0   ;objects inside this get some of the full damage
1854  
1855      Blast8Enabled       = Yes
1856      Blast8Delay         = 999999  ;in milliseconds, don't do the damage wave    
1857      Blast8ScorchDelay   = 700     ;in milliseconds
1858      Blast8OuterRadius   = 210.0   ;objects inside this get some of the full damage
1859  
1860      Blast9Enabled       = Yes
1861      Blast9Delay         = 999999  ;in milliseconds, don't do the damage wave    
1862      Blast9ScorchDelay   = 800     ;in milliseconds
1863      Blast9OuterRadius   = 210.0   ;objects inside this get some of the full damage
1864      
1865      OCL            = MIDPOINT   OCL_NukeRadiationField
1866    End
1867  
1868    Geometry = CYLINDER
1869    GeometryIsSmall = Yes
1870    GeometryMajorRadius = 7.0
1871    GeometryHeight = 60.0
1872  
1873  End
1874  
1875  ;------------------------------------------------------------------------------
1876  Object CargoTruckNuke
1877  
1878    ; ***DESIGN parameters ***
1879    DisplayName        = OBJECT:NeutronMissile
1880    EditorSorting      = SYSTEM
1881    VisionRange = 300.0  
1882    ShroudClearingRange = 0
1883    ArmorSet
1884      Conditions       = None
1885      Armor            = ProjectileArmor
1886      DamageFX         = None
1887    End
1888  
1889    ; *** AUDIO Parameters ***
1890    ; SoundFallingFromPlane = DaisyCutterWeapon
1891      
1892    ; *** ENGINEERING Parameters ***
1893    Body = ActiveBody ModuleTag_01
1894      MaxHealth        = 99999999.0
1895      InitialHealth    = 99999999.0
1896    End
1897  
1898  
1899    ;The lifetime delays the explosion with enough time to play an audio cue.
1900    ;NOTE: The lifetime update is set in the ObjectCreationList that creates
1901    ;      this object!!!
1902    Behavior = LifetimeUpdate ModuleTag_02
1903      MinLifetime = 3000   ; min lifetime in msec
1904      MaxLifetime = 3000   ; max lifetime in msec
1905    End
1906  
1907    Behavior = NeutronMissileSlowDeathBehavior ModuleTag_03
1908      DestructionDelay = 3501
1909      ScorchMarkSize      = 320
1910      FXList              = FX_Nuke
1911      
1912      Blast1Enabled       = Yes
1913      Blast1Delay         = 580     ;in milliseconds
1914      Blast1ScorchDelay   = 100     ;in milliseconds
1915      Blast1InnerRadius   = 60.0    ;objects inside this get the full damage
1916      Blast1OuterRadius   = 60.0    ;objects inside this get some of the full damage
1917      Blast1MaxDamage     = 0.0     ;damage within inner radius of blast
1918      Blast1MinDamage     = 0.0     ;always do at least this much damage to objects
1919      Blast1ToppleSpeed   = 0.5     ;higher #'s topple faster
1920      Blast1PushForce     = 10.0    ;higher #'s push more
1921      
1922      Blast2Enabled       = Yes
1923      Blast2Delay         = 660    ;in milliseconds
1924      Blast2ScorchDelay   = 180     ;in milliseconds
1925      Blast2InnerRadius   = 90.0    ;objects inside this get the full damage
1926      Blast2OuterRadius   = 90.0    ;objects inside this get some of the full damage
1927      Blast2MaxDamage     = 0.0     ;damage within inner radius of blast
1928      Blast2MinDamage     = 0.0     ;always do at least this much damage to objects
1929      Blast2ToppleSpeed   = 0.45    ;higher #'s topple faster
1930      Blast2PushForce     = 8.0     ;higher #'s push more
1931      
1932      Blast3Enabled       = Yes
1933      Blast3Delay         = 720    ;in milliseconds
1934      Blast3ScorchDelay   = 260     ;in milliseconds
1935      Blast3InnerRadius   = 120.0   ;objects inside this get the full damage
1936      Blast3OuterRadius   = 120.0   ;objects inside this get some of the full damage
1937      Blast3MaxDamage     = 0.0     ;damage within inner radius of blast
1938      Blast3MinDamage     = 0.0     ;always do at least this much damage to objects
1939      Blast3ToppleSpeed   = 0.42    ;higher #'s topple faster
1940      Blast3PushForce     = 6.0     ;higher #'s push more
1941  
1942      Blast4Enabled       = Yes
1943      Blast4Delay         = 850    ;in milliseconds
1944      Blast4ScorchDelay   = 340     ;in milliseconds
1945      Blast4InnerRadius   = 150.0   ;objects inside this get the full damage
1946      Blast4OuterRadius   = 150.0   ;objects inside this get some of the full damage
1947      Blast4MaxDamage     = 0.0     ;damage within inner radius of blast
1948      Blast4MinDamage     = 0.0     ;always do at least this much damage to objects
1949      Blast4ToppleSpeed   = 0.40    ;higher #'s topple faster
1950      Blast4PushForce     = 6.0     ;higher #'s push more
1951  
1952      Blast5Enabled       = Yes
1953      Blast5Delay         = 1000    ;in milliseconds
1954      Blast5ScorchDelay   = 420     ;in milliseconds
1955      Blast5InnerRadius   = 180.0   ;objects inside this get the full damage
1956      Blast5OuterRadius   = 180.0   ;objects inside this get some of the full damage
1957      Blast5MaxDamage     = 0.0     ;damage within inner radius of blast
1958      Blast5MinDamage     = 0.0     ;always do at least this much damage to objects
1959      Blast5ToppleSpeed   = 0.38    ;higher #'s topple faster
1960      Blast5PushForce     = 6.0     ;higher #'s push more
1961      
1962      Blast6Enabled       = Yes
1963      Blast6Delay         = 1180    ;in milliseconds
1964      Blast6ScorchDelay   = 500     ;in milliseconds
1965      Blast6InnerRadius   = 60.0    ;objects inside this get the full damage
1966      Blast6OuterRadius   = 210.0   ;objects inside this get some of the full damage
1967      Blast6MaxDamage     = 3500.0  ;damage within inner radius of blast
1968      Blast6MinDamage     = 200.0   ;always do at least this much damage to objects
1969      Blast6ToppleSpeed   = 0.35    ;higher #'s topple faster
1970      Blast6PushForce     = 4.0     ;higher #'s push more
1971  
1972      Blast7Enabled       = Yes
1973      Blast7Delay         = 999999  ;in milliseconds, don't do the damage wave
1974      Blast7ScorchDelay   = 620     ;in milliseconds
1975      Blast7OuterRadius   = 210.0   ;objects inside this get some of the full damage
1976  
1977      Blast8Enabled       = Yes
1978      Blast8Delay         = 999999  ;in milliseconds, don't do the damage wave    
1979      Blast8ScorchDelay   = 700     ;in milliseconds
1980      Blast8OuterRadius   = 210.0   ;objects inside this get some of the full damage
1981  
1982      Blast9Enabled       = Yes
1983      Blast9Delay         = 999999  ;in milliseconds, don't do the damage wave    
1984      Blast9ScorchDelay   = 800     ;in milliseconds
1985      Blast9OuterRadius   = 210.0   ;objects inside this get some of the full damage
1986      
1987    End
1988  
1989    Geometry = Cylinder
1990    GeometryIsSmall = Yes
1991    GeometryMajorRadius = 7.0
1992    GeometryHeight = 60.0
1993  End
1994  
1995  ;------------------------------------------------------------------------------
1996  Object ScudStormMissile
1997  
1998    ; *** ART Parameters ***
1999    Draw               = W3DModelDraw ModuleTag_01
2000      OkToChangeModelColor = Yes
2001      DefaultConditionState
2002        Model          = UBScudStrm_M
2003      End
2004      ConditionState   = DAMAGED REALLYDAMAGED RUBBLE
2005        Model          = NONE
2006      End
2007      
2008    End
2009  
2010    ; ***DESIGN parameters ***
2011    KindOf = PROJECTILE ;BALLISTIC_MISSILE
2012    EditorSorting       = SYSTEM
2013    VisionRange         = 300.0  
2014    ShroudClearingRange = 0
2015    TransportSlotCount  = 10
2016    ArmorSet
2017      Conditions       = None
2018      Armor            = ProjectileArmor
2019      DamageFX         = None
2020    End
2021  
2022    ; *** AUDIO Parameters ***
2023    ; SoundFallingFromPlane = DaisyCutterWeapon
2024      
2025    ; *** ENGINEERING Parameters ***
2026    Body = ActiveBody ModuleTag_02
2027      MaxHealth        = 10000.0
2028      InitialHealth    = 10000.0
2029    End
2030  
2031    Behavior = PhysicsBehavior ModuleTag_03
2032      Mass = 500.0
2033    End
2034  
2035    Behavior = MissileAIUpdate ModuleTag_04
2036      TryToFollowTarget             = No 
2037      FuelLifetime                  = 0 ; zero is infinite
2038      InitialVelocity               = 0                ; in dist/sec
2039      IgnitionFX                    = FX_ScudStormIgnition
2040      DistanceToTravelBeforeTurning = 500
2041      DistanceToTargetBeforeDiving  = 200 ; When I hit this close to target, I ignore PreferredHeight.
2042    End
2043    Locomotor = SET_NORMAL SCUDStormMissileLocomotor
2044  
2045    Behavior = HeightDieUpdate ModuleTag_05
2046      TargetHeight                    = 15.0
2047      TargetHeightIncludesStructures  = No
2048      OnlyWhenMovingDown              = Yes
2049      SnapToGroundOnDeath             = Yes
2050      InitialDelay                    = 1000 ; Can't explode in the first second so we don't explode on the pad
2051    End
2052  
2053    Behavior = DestroyDie ModuleTag_06
2054      ;nothing
2055    End
2056  
2057    Behavior = SpecialPowerCompletionDie ModuleTag_07
2058      SpecialPowerTemplate = SuperweaponScudStorm
2059    End
2060  
2061    Behavior = FireWeaponWhenDeadBehavior ModuleTag_08
2062      DeathWeapon   = ScudStormDamageWeapon
2063      StartsActive  = Yes
2064      ConflictsWith = Upgrade_GLAAnthraxBeta      
2065    End
2066  
2067    Behavior = FireWeaponWhenDeadBehavior ModuleTag_09
2068      DeathWeapon   = ScudStormDamageWeaponUpgraded
2069      StartsActive  = No                      ; turned on by upgrade
2070      TriggeredBy   = Upgrade_GLAAnthraxBeta         
2071    End
2072  
2073  
2074    Geometry = Cylinder
2075    GeometryIsSmall = Yes
2076    GeometryMajorRadius = 7.0
2077    GeometryHeight = 30.0
2078  
2079  End
2080  
2081  
2082  
2083  
2084  
2085  
2086  ;------------------------------------------------------------------------------
2087  Object NapalmMissile
2088  
2089    ; *** ART Parameters ***
2090    Draw = W3DModelDraw ModuleTag_01
2091      OkToChangeModelColor = Yes
2092      DefaultConditionState
2093        Model = AVRaptor_M
2094      End
2095      ConditionState = JAMMED
2096        ParticleSysBone = None SparksMedium
2097      End
2098    End
2099  
2100    ; ***DESIGN parameters ***
2101    DisplayName         = OBJECT:Missile
2102    EditorSorting       = SYSTEM
2103    VisionRange         = 0.0  ; Projectiles can't see, but superweapons *may need to*
2104    TransportSlotCount  = 1    ; since Napalm Strike carries us as payload, not weapon
2105    ArmorSet
2106      Conditions      = None
2107      Armor           = ProjectileArmor
2108      DamageFX        = None
2109    End
2110  
2111    ; *** ENGINEERING Parameters ***
2112    KindOf = PRELOAD CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
2113    Body = ActiveBody ModuleTag_02
2114      MaxHealth       = 100.0
2115      InitialHealth   = 100.0
2116  
2117      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
2118      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
2119      ; A projectile is not disabled, but instead loses target and scatters
2120      SubdualDamageCap = 200
2121      SubdualDamageHealRate = 100000
2122      SubdualDamageHealAmount = 50
2123    End
2124  
2125  ; ---- begin Projectile death behaviors
2126    Behavior = InstantDeathBehavior DeathModuleTag_01
2127      DeathTypes = NONE +DETONATED
2128      ; we detonated normally.
2129      ; no FX, just quiet destroy ourselves
2130    End
2131    Behavior = InstantDeathBehavior DeathModuleTag_02
2132      DeathTypes = NONE +LASERED
2133      ; shot down by laser.
2134      FX         = FX_GenericMissileDisintegrate
2135      OCL        = OCL_GenericMissileDisintegrate
2136    End
2137    Behavior = InstantDeathBehavior DeathModuleTag_03
2138      DeathTypes = ALL -LASERED -DETONATED
2139      ; shot down by nonlaser.
2140      FX         = FX_GenericMissileDeath
2141    End
2142  ; ---- end Projectile death behaviors
2143  
2144    Behavior = PhysicsBehavior ModuleTag_06
2145      Mass = 1
2146    End
2147    Behavior = MissileAIUpdate ModuleTag_07
2148      TryToFollowTarget   = Yes 
2149      FuelLifetime        = 10000
2150      InitialVelocity     = 75                ; in dist/sec
2151      IgnitionDelay       = 30
2152      IgnitionFX          = FX_NapalmMissileIgnition
2153    End
2154    Locomotor = SET_NORMAL NapalmMissileLocomotor
2155  
2156    Geometry = Sphere
2157    GeometryIsSmall = Yes
2158    GeometryMajorRadius = 1.0
2159  
2160  End
2161  
2162  ;------------------------------------------------------------------------------
2163  Object ChinaJetMIGNapalmStriker
2164  
2165    ; *** ART Parameters ***
2166    Draw = W3DModelDraw ModuleTag_01
2167  
2168      DefaultConditionState
2169        Model = NVMig
2170        WeaponLaunchBone    = PRIMARY WeaponA
2171        ParticleSysBone     = Exhaust01 JetExhaust
2172        ;ParticleSysBone    = Exhaust02 JetExhaust
2173        HideSubObject       = BurnerFX01 BurnerFX02
2174      End
2175      ConditionState = REALLYDAMAGED
2176        Model = NVMig_d
2177      End
2178      AliasConditionState = RUBBLE
2179  
2180      OkToChangeModelColor = Yes
2181    End
2182  
2183    ; ***DESIGN parameters ***
2184    DisplayName         = OBJECT:MIG
2185    EditorSorting       = SYSTEM
2186    Side                = China
2187    TransportSlotCount  = 0                 ;how many "slots" we take in a transport (0 == not transportable)
2188    VisionRange         = 300.0 
2189    ShroudClearingRange = 300
2190    Prerequisites
2191      Object = ChinaAirfield
2192    End
2193    WeaponSet
2194      Conditions        = None 
2195      Weapon            = PRIMARY     NapalmMissileWeapon
2196    End
2197    WeaponSet
2198      Conditions        = PLAYER_UPGRADE
2199      Weapon            = PRIMARY     BlackNapalmMissileWeapon
2200    End
2201    ArmorSet
2202      Conditions      = None
2203      Armor           = AirplaneArmor
2204      DamageFX        = None
2205    End
2206    CommandSet        = ChinaJetMIGCommandSet
2207  
2208    ; *** AUDIO Parameters ***
2209    SoundAmbient = F15MoveLoop
2210    SoundAmbientRubble    = NoSound
2211  
2212    ; *** ENGINEERING Parameters ***
2213    RadarPriority = UNIT 
2214    KindOf = PRELOAD CAN_CAST_REFLECTIONS CAN_ATTACK VEHICLE SCORE AIRCRAFT IGNORED_IN_GUI EMP_HARDENED
2215  
2216    Body = ActiveBody ModuleTag_02
2217      MaxHealth       = 200.0
2218      InitialHealth   = 200.0
2219    End
2220  
2221    Behavior = SpecialPowerCompletionDie ModuleTag_03
2222      SpecialPowerTemplate = SuperweaponNapalmStrike
2223    End
2224  
2225    Behavior                          = JetSlowDeathBehavior ModuleTag_04
2226      DestructionDelay                = 99999999; destruction will happen when we
2227      RollRate                        = 0.2
2228      RollRateDelta                   = 100%     ;each frame, rollrate = rollrate * rollrateDelta
2229      PitchRate                       = 0.0
2230      FallHowFast                     = 110.0%   ;Bigger is faster (can be over 100%,it's a fraction of gravity)
2231      FXInitialDeath                  = FX_JetDeathInitial
2232      OCLInitialDeath                 = OCL_MIGDeathInitial
2233      DelaySecondaryFromInitialDeath  = 500  ; in milliseconds
2234      FXSecondary                     = FX_JetDeathSecondary
2235      OCLSecondary                    = OCL_MIGDeathSecondary
2236      FXHitGround                     = FX_JetDeathHitGround
2237      OCLHitGround                    = OCL_MIGDeathHitGround
2238      DelayFinalBlowUpFromHitGround   = 200 ; in milliseconds
2239      FXFinalBlowUp                   = FX_JetDeathFinalBlowUp
2240      OCLFinalBlowUp                  = OCL_MIGDeathFinalBlowUp
2241    End
2242  
2243    Behavior = DeliverPayloadAIUpdate ModuleTag_06
2244      DoorDelay = 0
2245    End
2246    Locomotor = SET_NORMAL MIGLocomotor
2247  
2248    Behavior = WeaponSetUpgrade ModuleTag_07
2249      TriggeredBy = Upgrade_ChinaBlackNapalm
2250    End
2251  
2252    Behavior = TransportContain ModuleTag_08
2253      Slots = 100                     ; hey, it's a BIG transport
2254      ScatterNearbyOnExit = No
2255      OrientLikeContainerOnExit = Yes
2256      KeepContainerVelocityOnExit = Yes
2257      ExitPitchRate = 30
2258      ExitBone = WeaponA
2259      AllowInsideKindOf  = PROJECTILE
2260      DoorOpenTime = 0                ; this prevents the Contain module from messing with the doors, since we want DeliverPayload to handle 'em
2261      NumberOfExitPaths = 0
2262      DestroyRidersWhoAreNotFreeToExit = Yes  ; 'destroy' as opposed to 'kill'
2263    End
2264  
2265    Behavior = PhysicsBehavior ModuleTag_09
2266      Mass = 500.0
2267    End
2268  
2269    Behavior = FlammableUpdate ModuleTag_21
2270      AflameDuration = 5000         ; If I catch fire, I'll burn for this long...
2271      AflameDamageAmount = 3       ; taking this much damage...
2272      AflameDamageDelay = 500       ; this often.
2273    End
2274  
2275  
2276    Geometry = Cylinder
2277    GeometryIsSmall = Yes
2278    GeometryMajorRadius = 7.0
2279    GeometryMinorRadius = 7.0
2280    GeometryHeight = 7.0
2281    
2282    Shadow = SHADOW_VOLUME
2283    ShadowSizeX = 89  ; minimum elevation angle above horizon. Used to limit shadow length
2284  
2285  End
2286  
2287  
2288  
2289  
2290  ;------------------------------------------------------------------------------
2291  Object TNTStickyBomb ;Created by Chinese Tank Hunters
2292  
2293    ;No drawable because it's invisible
2294    ; *** ART Parameters ***
2295  
2296    ; ***DESIGN parameters ***
2297    Side = China
2298    EditorSorting   = SYSTEM
2299    TransportSlotCount = 0                 ;how many "slots" we take in a transport (0 == not transportable)
2300    VisionRange = 75.0  ;Allow the stickybomb to show itself to user?
2301    ShroudClearingRange = 75
2302    ArmorSet
2303      Conditions      = None
2304      Armor           = InvulnerableAllArmor
2305    End
2306  
2307    ; *** AUDIO Parameters ***
2308    UnitSpecificSounds
2309      UnitBombPing = BombTickTimed
2310    End
2311  
2312    ; *** ENGINEERING Parameters ***
2313    RadarPriority = NOT_ON_RADAR
2314    KindOf = PROJECTILE MINE NO_COLLIDE
2315  
2316    Behavior = PhysicsBehavior ModuleTag_01
2317      Mass = 5
2318    End
2319  
2320    ;This determines how long the bomb lives before it explodes (via SlowDeathBehavior)
2321    Behavior = LifetimeUpdate ModuleTag_02
2322      MinLifetime = 10000   ; min lifetime in msec
2323      MaxLifetime = 10000   ; max lifetime in msec
2324    End
2325  
2326    Behavior = StickyBombUpdate ModuleTag_03
2327      ; nothing
2328    End
2329  
2330    Behavior = SlowDeathBehavior ModuleTag_04
2331      DestructionDelay    = 1
2332      FX                  = INITIAL WeaponFX_TNTStickyBombDetonation
2333      Weapon              = FINAL   TNTDetonationWeapon
2334    End
2335  
2336    Body = HighlanderBody ModuleTag_NewBody
2337      MaxHealth = 1.0
2338      InitialHealth = 1.0
2339    End
2340  
2341    Geometry            = CYLINDER
2342    GeometryMajorRadius = 8.0
2343    GeometryHeight      = 8.0
2344    GeometryIsSmall     = Yes
2345  
2346  End
2347  
2348  ;------------------------------------------------------------------------------
2349  Object BoobyTrap ; created by upgraded rebels
2350  
2351    ;No drawable because it's invisible
2352    ; *** ART Parameters ***
2353  
2354    ; ***DESIGN parameters ***
2355    Side = GLA
2356    EditorSorting   = SYSTEM
2357    TransportSlotCount = 0                 ;how many "slots" we take in a transport (0 == not transportable)
2358    VisionRange = 25.0  ;Allow the stickybomb to show itself to user?
2359    ShroudClearingRange = 25
2360    ArmorSet
2361      Conditions      = None
2362      Armor           = InvulnerableAllArmor
2363    End
2364  
2365    ; *** AUDIO Parameters ***
2366    UnitSpecificSounds
2367      StickyBombCreated = BoobyTrapInstall
2368    End
2369  
2370    ; *** ENGINEERING Parameters ***
2371    RadarPriority = NOT_ON_RADAR
2372    KindOf = BOOBY_TRAP NO_COLLIDE MINE
2373  
2374    Body = HighlanderBody ModuleTag_01
2375      MaxHealth = 1.0
2376      InitialHealth = 1.0
2377    End
2378  
2379    Behavior = PhysicsBehavior ModuleTag_02
2380      Mass = 5
2381    End
2382  
2383    Behavior = StickyBombUpdate ModuleTag_03
2384      GeometryBasedDamageWeapon = BoobyTrapDetonationWeapon ; We add our bounding circle to the radius of this weapon, and damage people ourselves
2385      GeometryBasedDamageFX = FX_BoobyTrapExplosion ; And we modify our effect too
2386    End
2387  
2388    Behavior = StealthUpdate ModuleTag_04
2389      StealthDelay                = 0                  ; msec
2390      StealthForbiddenConditions  = NONE
2391      FriendlyOpacityMin          = 50.0%
2392      InnateStealth               = Yes
2393    End
2394  
2395    Geometry            = CYLINDER
2396    GeometryMajorRadius = 8.0
2397    GeometryHeight      = 8.0
2398    GeometryIsSmall     = Yes
2399  
2400  End
2401  
2402  ;------------------------------------------------------------------------------
2403  Object RemoteC4Charge ;Created by ColonelBurton
2404  
2405    ;No drawable because it's invisible
2406    ; *** ART Parameters ***
2407  
2408    ; ***DESIGN parameters ***
2409    Side = America
2410    EditorSorting   = SYSTEM
2411    TransportSlotCount = 0                 ;how many "slots" we take in a transport (0 == not transportable)
2412    VisionRange = 75.0  ;Allow the stickybomb to show itself to user?
2413    ShroudClearingRange = 75
2414    ArmorSet
2415      Conditions      = None
2416      Armor           = InvulnerableAllArmor
2417    End
2418  
2419    ; *** AUDIO Parameters ***
2420    UnitSpecificSounds
2421      UnitBombPing = BombTickRemote
2422      StickyBombCreated = ColonelBurtonSetDemoCharge
2423    End
2424  
2425    ; *** ENGINEERING Parameters ***
2426    RadarPriority = NOT_ON_RADAR
2427    KindOf =  PROJECTILE MINE NO_COLLIDE
2428  
2429    ;Body = ActiveBody ModuleTag_02
2430    ;  MaxHealth = 1.0
2431    ;  InitialHealth = 1.0
2432    ;End
2433  
2434    Body = HighlanderBody ModuleTag_NewBody
2435      MaxHealth = 1.0
2436      InitialHealth = 1.0
2437    End
2438  
2439    Behavior = StealthUpdate ModuleTag_03
2440      StealthDelay                = 0                  ; msec
2441      StealthForbiddenConditions  = NONE
2442      FriendlyOpacityMin          = 50.0%
2443      InnateStealth               = Yes
2444    End
2445  
2446    Behavior = StickyBombUpdate ModuleTag_04
2447      ;Keeps it attached properly to the intended target should it move.
2448    End
2449  
2450  
2451    Behavior = SlowDeathBehavior ModuleTag_05
2452      DestructionDelay = 1
2453      FX                  = INITIAL WeaponFX_TNTStickyBombDetonation
2454      Weapon              = FINAL   BurtonC4ChargeWeapon
2455    End
2456  
2457    Geometry            = CYLINDER
2458    GeometryMajorRadius = 8.0
2459    GeometryHeight      = 8.0
2460    GeometryIsSmall     = Yes
2461  
2462  End
2463  
2464  ;------------------------------------------------------------------------------
2465  Object TimedC4Charge ;Created by Colonel Burton
2466  
2467    ;No drawable because it's invisible
2468    ; *** ART Parameters ***
2469  
2470    ; ***DESIGN parameters ***
2471    Side = America
2472    EditorSorting   = SYSTEM
2473    TransportSlotCount = 0                 ;how many "slots" we take in a transport (0 == not transportable)
2474    VisionRange = 75.0  ;Allow the stickybomb to show itself to user?
2475    ShroudClearingRange = 75
2476    ArmorSet
2477      Conditions      = None
2478      Armor           = InvulnerableAllArmor
2479    End
2480  
2481    ; *** AUDIO Parameters ***
2482    UnitSpecificSounds
2483      UnitBombPing = BombTickTimed
2484      StickyBombCreated = ColonelBurtonSetDemoCharge
2485    End
2486  
2487    ; *** ENGINEERING Parameters ***
2488    RadarPriority = NOT_ON_RADAR
2489    KindOf =  PROJECTILE MINE NO_COLLIDE
2490  
2491    ;Body = ActiveBody ModuleTag_02
2492    ;  MaxHealth = 1.0
2493    ;  InitialHealth = 1.0
2494    ;End
2495    Body = HighlanderBody ModuleTag_NewBody
2496      MaxHealth = 1.0
2497      InitialHealth = 1.0
2498    End
2499  
2500    Behavior = StealthUpdate ModuleTag_03
2501      StealthDelay                = 0                  ; msec
2502      StealthForbiddenConditions  = NONE
2503      FriendlyOpacityMin          = 50.0%
2504      InnateStealth               = Yes
2505    End
2506  
2507    ;This determines how long the bomb lives before it explodes (via SlowDeathBehavior)
2508    Behavior = LifetimeUpdate ModuleTag_04
2509      MinLifetime = 20000   ; min lifetime in msec
2510      MaxLifetime = 20000   ; max lifetime in msec
2511    End
2512  
2513    Behavior = StickyBombUpdate ModuleTag_05
2514      ;Keeps it attached properly to the intended target should it move.
2515    End
2516  
2517    Behavior = SlowDeathBehavior ModuleTag_06
2518      DestructionDelay = 1
2519      FX                  = INITIAL WeaponFX_TNTStickyBombDetonation
2520      Weapon              = FINAL   BurtonC4ChargeWeapon
2521    End
2522  
2523    Geometry            = CYLINDER
2524    GeometryMajorRadius = 8.0
2525    GeometryHeight      = 8.0
2526    GeometryIsSmall     = Yes
2527  
2528  End
2529  
2530  ;------------------------------------------------------------------------------
2531  Object DemoTrapDetonationObject ;The explodes-next-frame object when demo trap is triggered.
2532  
2533    ; ***DESIGN parameters ***
2534    Side = GLA
2535    EditorSorting   = SYSTEM
2536    TransportSlotCount = 0                 ;how many "slots" we take in a transport (0 == not transportable)
2537    VisionRange = 0.0  ;Allow the stickybomb to show itself to user?
2538  
2539    ; *** AUDIO Parameters ***
2540  
2541    ; *** ENGINEERING Parameters ***
2542    RadarPriority = NOT_ON_RADAR
2543    KindOf = PROJECTILE
2544  
2545    Behavior = PhysicsBehavior ModuleTag_01
2546      Mass = 5
2547    End
2548  
2549    ;This determines how long the bomb lives before it explodes (via SlowDeathBehavior)
2550    Behavior = LifetimeUpdate ModuleTag_02
2551      MinLifetime = 1   ; min lifetime in msec
2552      MaxLifetime = 1   ; max lifetime in msec
2553    End
2554  
2555    Behavior = SlowDeathBehavior ModuleTag_03
2556      DestructionDelay = 1
2557      FX                  = INITIAL WeaponFX_DemoTrapDetonation
2558      Weapon              = FINAL   DemoTrapDetonationWeapon
2559    End
2560  End
2561  
2562  
2563  
2564  
2565  
2566  ;------------------------------------------------------------------------------
2567  Object StingerMissile
2568  
2569    ; *** ART Parameters ***
2570    Draw = W3DModelDraw ModuleTag_01
2571      OkToChangeModelColor = Yes
2572      DefaultConditionState
2573        Model = UVRockBug_m
2574      End
2575      ConditionState = JAMMED
2576        ParticleSysBone = None SparksMedium
2577      End
2578    End
2579  
2580    ; ***DESIGN parameters ***
2581    DisplayName      = OBJECT:StingerMissile
2582    EditorSorting   = SYSTEM
2583    VisionRange = 0.0  
2584    ArmorSet
2585      Conditions      = None
2586      Armor           = ProjectileArmor
2587      DamageFX        = None
2588    End
2589    TransportSlotCount = 1                 ;how many "slots" we take in a transport (0 == not transportable)
2590  
2591    ; *** ENGINEERING Parameters ***
2592    KindOf = PROJECTILE SMALL_MISSILE
2593    Body = ActiveBody ModuleTag_02
2594      MaxHealth       = 100.0
2595      InitialHealth   = 100.0
2596  
2597      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
2598      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
2599      ; A projectile is not disabled, but instead loses target and scatters
2600      SubdualDamageCap = 200
2601      SubdualDamageHealRate = 100000
2602      SubdualDamageHealAmount = 50
2603    End
2604  
2605  ; ---- begin Projectile death behaviors
2606    Behavior = InstantDeathBehavior DeathModuleTag_01
2607      DeathTypes = NONE +DETONATED
2608      ; we detonated normally.
2609      ; no FX, just quiet destroy ourselves
2610    End
2611    Behavior = InstantDeathBehavior DeathModuleTag_02
2612      DeathTypes = NONE +LASERED
2613      ; shot down by laser.
2614      FX         = FX_GenericMissileDisintegrate
2615      OCL        = OCL_GenericMissileDisintegrate
2616    End
2617    Behavior = InstantDeathBehavior DeathModuleTag_03
2618      DeathTypes = ALL -LASERED -DETONATED
2619      ; shot down by nonlaser.
2620      FX         = FX_GenericMissileDeath
2621    End
2622  ; ---- end Projectile death behaviors
2623      
2624    Behavior = PhysicsBehavior ModuleTag_06
2625      Mass = 1
2626    End
2627    Behavior = MissileAIUpdate ModuleTag_07
2628      TryToFollowTarget       = Yes 
2629      FuelLifetime            = 5000
2630      InitialVelocity         = 200                ; in dist/sec
2631      IgnitionDelay           = 0
2632      DistanceToTravelBeforeTurning = 5
2633      IgnitionFX              = None
2634      DistanceToTargetForLock = 100  ; If it gets within 100 of the target, it kills the target.
2635    End
2636  
2637    Behavior = WeaponBonusUpgrade Upgrade_01
2638      TriggeredBy = Upgrade_GLAAPRockets
2639    End
2640  
2641    Locomotor = SET_NORMAL StingerMissileLocomotor
2642  
2643    Geometry = Sphere
2644    GeometryIsSmall = Yes
2645    GeometryMajorRadius = 2.0
2646  
2647  End
2648  
2649  
2650  ;------------------------------------------------------------------------------
2651  Object ComancheAntiTankMissile
2652  
2653    ; *** ART Parameters ***
2654    Draw = W3DModelDraw ModuleTag_01
2655      OkToChangeModelColor = Yes
2656      DefaultConditionState
2657        ; @todo -- need real art here
2658        Model = UVRockBug_m
2659      End
2660      ConditionState = JAMMED
2661        ParticleSysBone = None SparksMedium
2662      End
2663    End
2664  
2665    ; ***DESIGN parameters ***
2666    DisplayName      = OBJECT:Prop
2667    EditorSorting     = SYSTEM
2668    VisionRange = 0.0  
2669    ArmorSet
2670      Conditions      = None
2671      Armor           = ProjectileArmor
2672      DamageFX        = None
2673    End
2674    TransportSlotCount = 1                 ;how many "slots" we take in a transport (0 == not transportable)
2675  
2676    ; *** ENGINEERING Parameters ***
2677    KindOf = PROJECTILE SMALL_MISSILE
2678    Body = ActiveBody ModuleTag_02
2679      MaxHealth       = 100.0
2680      InitialHealth   = 100.0
2681  
2682      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
2683      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
2684      ; A projectile is not disabled, but instead loses target and scatters
2685      SubdualDamageCap = 200
2686      SubdualDamageHealRate = 100000
2687      SubdualDamageHealAmount = 50
2688    End
2689  
2690  ; ---- begin Projectile death behaviors
2691    Behavior = InstantDeathBehavior DeathModuleTag_01
2692      DeathTypes = NONE +DETONATED
2693      ; we detonated normally.
2694      ; no FX, just quiet destroy ourselves
2695    End
2696    Behavior = InstantDeathBehavior DeathModuleTag_02
2697      DeathTypes = NONE +LASERED
2698      ; shot down by laser.
2699      FX         = FX_GenericMissileDisintegrate
2700      OCL        = OCL_GenericMissileDisintegrate
2701    End
2702    Behavior = InstantDeathBehavior DeathModuleTag_03
2703      DeathTypes = ALL -LASERED -DETONATED
2704      ; shot down by nonlaser.
2705      FX         = FX_GenericMissileDeath
2706    End
2707  ; ---- end Projectile death behaviors
2708      
2709    Behavior = PhysicsBehavior ModuleTag_06
2710      Mass = 1
2711    End
2712    Behavior = MissileAIUpdate ModuleTag_07
2713      TryToFollowTarget = Yes 
2714      FuelLifetime = 1000
2715      InitialVelocity = 150                ; in dist/sec
2716      IgnitionDelay = 0
2717      DistanceToTravelBeforeTurning = 10
2718      IgnitionFX = FX_BuggyMissileIgnition
2719    End
2720    Locomotor = SET_NORMAL ComancheAntiTankMissileLocomotor
2721  
2722    Geometry = Sphere
2723    GeometryIsSmall = Yes
2724    GeometryMajorRadius = 2.0
2725  
2726  End
2727  
2728  ;------------------------------------------------------------------------------
2729  Object ComancheRocketPodRocket
2730  
2731    ; *** ART Parameters ***
2732    Draw = W3DModelDraw ModuleTag_01
2733      OkToChangeModelColor = Yes
2734      DefaultConditionState
2735        ; @todo -- need real art here
2736        Model = UVRockBug_m
2737      End
2738      ConditionState = JAMMED
2739        ParticleSysBone = None SparksMedium
2740      End
2741    End
2742  
2743    ; ***DESIGN parameters ***
2744    DisplayName      = OBJECT:Prop
2745    EditorSorting     = SYSTEM
2746    VisionRange = 0.0  
2747    ArmorSet
2748      Conditions      = None
2749      Armor           = ProjectileArmor
2750      DamageFX        = None
2751    End
2752  
2753    ; *** ENGINEERING Parameters ***
2754    KindOf = PROJECTILE SMALL_MISSILE
2755    Body = ActiveBody ModuleTag_02
2756      MaxHealth       = 100.0
2757      InitialHealth   = 100.0
2758  
2759      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
2760      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
2761      ; A projectile is not disabled, but instead loses target and scatters
2762      SubdualDamageCap = 200
2763      SubdualDamageHealRate = 100000
2764      SubdualDamageHealAmount = 50
2765    End
2766  
2767  ; ---- begin Projectile death behaviors
2768    Behavior = InstantDeathBehavior DeathModuleTag_01
2769      DeathTypes = NONE +DETONATED
2770      ; we detonated normally.
2771      ; no FX, just quiet destroy ourselves
2772    End
2773    Behavior = InstantDeathBehavior DeathModuleTag_02
2774      DeathTypes = NONE +LASERED
2775      ; shot down by laser.
2776      FX         = FX_GenericMissileDisintegrate
2777      OCL        = OCL_GenericMissileDisintegrate
2778    End
2779    Behavior = InstantDeathBehavior DeathModuleTag_03
2780      DeathTypes = ALL -LASERED -DETONATED
2781      ; shot down by nonlaser.
2782      FX         = FX_GenericMissileDeath
2783    End
2784  ; ---- end Projectile death behaviors
2785      
2786    Behavior = PhysicsBehavior ModuleTag_06
2787      Mass = 1
2788    End
2789    Behavior = MissileAIUpdate ModuleTag_07
2790      TryToFollowTarget = No 
2791      FuelLifetime = 1000
2792      InitialVelocity = 150                ; in dist/sec
2793      IgnitionDelay = 0
2794      DistanceToTravelBeforeTurning = 10
2795      IgnitionFX = FX_BuggyMissileIgnition
2796    End
2797    Locomotor = SET_NORMAL ComancheRocketPodLocomotor
2798    Geometry = Sphere
2799    GeometryIsSmall = Yes
2800    GeometryMajorRadius = 2.0
2801  
2802  End
2803  
2804  ;------------------------------------------------------------------------------
2805  Object RocketBuggyMissile
2806  
2807    ; *** ART Parameters ***
2808    Draw = W3DModelDraw ModuleTag_01
2809      OkToChangeModelColor = Yes
2810      DefaultConditionState
2811        Model = UVRockBug_m
2812      End
2813      ConditionState = JAMMED
2814        ParticleSysBone = None SparksMedium
2815      End
2816    End
2817  
2818    ; ***DESIGN parameters ***
2819    EditorSorting     = SYSTEM
2820    VisionRange       = 0.0  
2821    ArmorSet
2822      Conditions      = None
2823      Armor           = ProjectileArmor
2824      DamageFX        = None
2825    End
2826  
2827    ; *** ENGINEERING Parameters ***
2828    KindOf = PROJECTILE SMALL_MISSILE
2829    Body = ActiveBody ModuleTag_02
2830      MaxHealth       = 100.0
2831      InitialHealth   = 100.0
2832  
2833      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
2834      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
2835      ; A projectile is not disabled, but instead loses target and scatters
2836      SubdualDamageCap = 200
2837      SubdualDamageHealRate = 100000
2838      SubdualDamageHealAmount = 50
2839    End
2840  
2841  
2842  ; ---- begin Projectile death behaviors
2843    Behavior = FireWeaponWhenDeadBehavior ModuleTag_04
2844      DeathWeapon   = ToxinShellWeapon
2845      StartsActive  = No                      ; turned on by upgrade
2846      TriggeredBy   = RocketBuggyToxinUpgrade          
2847      ConflictsWith = Upgrade_GLAAnthraxBeta Chem_Upgrade_GLAAnthraxGamma      
2848    End
2849  
2850    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
2851      DeathWeapon   = ToxinShellWeaponUpgraded
2852      StartsActive  = No                      ; turned on by upgrade
2853      TriggeredBy   = Upgrade_GLAAnthraxBeta   RocketBuggyToxinUpgrade      
2854      RequiresAllTriggers = Yes ;TriggeredBy is an AND, not an OR like it normally is
2855      ConflictsWith = Chem_Upgrade_GLAAnthraxGamma
2856    End
2857  
2858    Behavior = FireWeaponWhenDeadBehavior ModuleTag99
2859      DeathWeapon   = Chem_ToxinShellWeaponGamma
2860      StartsActive  = No
2861      TriggeredBy   = Chem_Upgrade_GLAAnthraxGamma RocketBuggyToxinUpgrade
2862      RequiresAllTriggers = Yes; 
2863    End;
2864  
2865    Behavior = InstantDeathBehavior DeathModuleTag_01
2866      DeathTypes = NONE +DETONATED
2867      ; we detonated normally.
2868      ; no FX, just quiet destroy ourselves
2869    End
2870    Behavior = InstantDeathBehavior DeathModuleTag_02
2871      DeathTypes = NONE +LASERED
2872      ; shot down by laser.
2873      FX         = FX_GenericMissileDisintegrate
2874      OCL        = OCL_GenericMissileDisintegrate
2875    End
2876    Behavior = InstantDeathBehavior DeathModuleTag_03
2877      DeathTypes = ALL -LASERED -DETONATED
2878      ; shot down by nonlaser.
2879      FX         = FX_GenericMissileDeath
2880    End
2881  
2882  
2883  ; ---- end Projectile death behaviors
2884  
2885    Behavior = PhysicsBehavior ModuleTag_06
2886      Mass = 1
2887    End
2888    Behavior = MissileAIUpdate ModuleTag_07
2889      TryToFollowTarget               = Yes
2890      FuelLifetime                    = 1800
2891      InitialVelocity                 = 150                ; in dist/sec
2892      IgnitionDelay                   = 0
2893      DistanceToTravelBeforeTurning   = 3
2894      IgnitionFX                      = FX_BuggyMissileIgnition
2895      DistanceScatterWhenJammed       = 100
2896    End
2897    Locomotor = SET_NORMAL RocketBuggyMissileLocomotor
2898  
2899    Behavior = WeaponBonusUpgrade ModuleTag_08
2900      TriggeredBy = Upgrade_GLAAPRockets
2901    End
2902  
2903    Geometry = Sphere
2904    GeometryIsSmall = Yes
2905    GeometryMajorRadius = 2.0
2906  
2907  End
2908  
2909  ;------------------------------------------------------------------------------
2910  Object SCUDMissile
2911  
2912    ; *** ART Parameters ***
2913    Draw = W3DModelDraw ModuleTag_01
2914      OkToChangeModelColor = Yes
2915      DefaultConditionState
2916        Model = UVScudLchr_M
2917      End
2918      ConditionState = REALLYDAMAGED
2919        Model = UVScudLchr_DM
2920      End
2921      ConditionState = JAMMED
2922        ParticleSysBone = None SparksMedium
2923      End
2924      ConditionState = REALLYDAMAGED JAMMED
2925        Model = UVScudLchr_DM
2926        ParticleSysBone = None SparksMedium
2927      End
2928    End
2929  
2930    ; ***DESIGN parameters ***
2931    DisplayName      = OBJECT:SCUDMissile
2932    EditorSorting   = SYSTEM
2933    VisionRange = 0.0  
2934    ArmorSet
2935      Conditions      = None
2936      ;*Be careful with this type, use in conjunction with KindOf = BALLISTIC_MISSILE to restrict targeting
2937      ;*to select weapons, because ballistic missile armor is weak! Weapons capable of targeting must have
2938      ;*AntiBallisticMissile = Yes set in the Weapon.ini.
2939      Armor           = BallisticMissileArmor 
2940      DamageFX        = None
2941    End
2942  
2943    ; *** ENGINEERING Parameters ***
2944    KindOf = PROJECTILE BALLISTIC_MISSILE
2945    Body = ActiveBody ModuleTag_02
2946      MaxHealth       = 100.0
2947      InitialHealth   = 100.0
2948  
2949      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
2950      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
2951      ; A projectile is not disabled, but instead loses target and scatters
2952      SubdualDamageCap = 200
2953      SubdualDamageHealRate = 100000
2954      SubdualDamageHealAmount = 50
2955    End
2956  
2957  ; ---- begin Projectile death behaviors
2958    Behavior = InstantDeathBehavior DeathModuleTag_01
2959      DeathTypes = NONE +DETONATED
2960      ; we detonated normally.
2961      ; no FX, just quiet destroy ourselves
2962    End
2963    Behavior = InstantDeathBehavior DeathModuleTag_02
2964      DeathTypes = NONE +LASERED
2965      ; shot down by laser.
2966      FX         = FX_GenericMissileDisintegrate
2967      OCL        = OCL_GenericMissileDisintegrate
2968    End
2969    Behavior = InstantDeathBehavior DeathModuleTag_03
2970      DeathTypes = ALL -LASERED -DETONATED
2971      ; shot down by nonlaser.
2972      FX         = FX_GenericMissileDeath
2973    End
2974  ; ---- end Projectile death behaviors
2975      
2976    Behavior = PhysicsBehavior ModuleTag_06
2977      Mass = 1
2978    End
2979    Behavior = MissileAIUpdate ModuleTag_07
2980      TryToFollowTarget = No 
2981      FuelLifetime = 5000
2982      IgnitionDelay = 0
2983  ;   IgnitionFX = FX_ScudStormIgnition ;NOT WORKING
2984      InitialVelocity = 50                ; in dist/sec
2985      DistanceToTravelBeforeTurning = 200
2986      DistanceToTargetBeforeDiving = 200 ; When I hit this close to target, I ignore PreferredHeight.
2987    End
2988    Locomotor = SET_NORMAL SCUDMissileLocomotor
2989  
2990    Behavior = WeaponBonusUpgrade ModuleTag_08
2991      TriggeredBy = Upgrade_GLAAPRockets
2992    End
2993  
2994    Geometry = Cylinder ; Since collision extents can't tilt, this is a little fake
2995    GeometryMajorRadius = 4.0
2996    GeometryHeight = 4.0
2997    GeometryIsSmall = Yes    
2998  
2999    Shadow = SHADOW_DECAL
3000  End
3001  
3002  ObjectReskin SCUDMissilePlusOne SCUDMissile
3003    Draw = W3DModelDraw ModuleTag_01
3004      OkToChangeModelColor = Yes
3005      DefaultConditionState
3006        Model = UVScudLchr_B
3007      End
3008      ConditionState = JAMMED
3009        ParticleSysBone = None SparksMedium
3010      End
3011    End
3012  
3013  End
3014  
3015  ObjectReskin SCUDMissilePlusTwo SCUDMissile
3016    Draw = W3DModelDraw ModuleTag_01
3017      OkToChangeModelColor = Yes
3018      DefaultConditionState
3019        Model = UVScudLchr_C
3020      End
3021      ConditionState = JAMMED
3022        ParticleSysBone = None SparksMedium
3023      End
3024    End
3025  
3026  End
3027  
3028  ;------------------------------------------------------------------------------
3029  Object TomahawkMissile
3030  
3031    ; *** ART Parameters ***
3032    Draw = W3DModelDraw ModuleTag_01
3033      OkToChangeModelColor = Yes
3034      DefaultConditionState
3035        Model = AVTomahawk_M
3036      End
3037      ConditionState = JAMMED
3038        ParticleSysBone = None SparksMedium
3039      End
3040    End
3041  
3042    ; ***DESIGN parameters ***
3043    DisplayName      = OBJECT:TomahawkMissile
3044    EditorSorting   = SYSTEM
3045    VisionRange = 0.0  
3046    ArmorSet
3047      Conditions      = None
3048      ;*Be careful with this type, use in conjunction with KindOf = BALLISTIC_MISSILE to restrict targeting
3049      ;*to select weapons, because ballistic missile armor is weak! Weapons capable of targeting must have
3050      ;*AntiBallisticMissile = Yes set in the Weapon.ini.
3051      Armor           = BallisticMissileArmor 
3052      DamageFX        = None
3053    End
3054  
3055    ; *** ENGINEERING Parameters ***
3056    KindOf = PROJECTILE BALLISTIC_MISSILE 
3057    Body = ActiveBody ModuleTag_02
3058      MaxHealth       = 200.0
3059      InitialHealth   = 100.0
3060  
3061      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
3062      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
3063      ; A projectile is not disabled, but instead loses target and scatters
3064      SubdualDamageCap = 400
3065      SubdualDamageHealRate = 100000
3066      SubdualDamageHealAmount = 50
3067    End
3068  
3069  ; ---- begin Projectile death behaviors
3070    Behavior = InstantDeathBehavior DeathModuleTag_01
3071      DeathTypes = NONE +DETONATED
3072      ; we detonated normally.
3073      FX          = WeaponFX_TomahawkMissileDetonation
3074    End
3075    Behavior = InstantDeathBehavior DeathModuleTag_02
3076      DeathTypes = NONE +LASERED
3077      ; shot down by laser.
3078      FX         = FX_GenericMissileDisintegrate
3079      OCL        = OCL_GenericMissileDisintegrate
3080    End
3081    Behavior = InstantDeathBehavior DeathModuleTag_03
3082      DeathTypes = ALL -LASERED -DETONATED
3083      ; shot down by nonlaser.
3084      FX         = FX_GenericMissileDeath
3085    End
3086  ; ---- end Projectile death behaviors
3087      
3088    Behavior = PhysicsBehavior ModuleTag_06
3089      Mass = 1
3090    End
3091    Behavior = MissileAIUpdate ModuleTag_07
3092      TryToFollowTarget = Yes 
3093      FuelLifetime = 4000
3094      IgnitionDelay = 0
3095      IgnitionFX = FX_TomahawkIgnition
3096      InitialVelocity = 50                ; in dist/sec
3097      DistanceToTravelBeforeTurning = 80
3098      DistanceToTargetBeforeDiving = 100 ; When I hit this close to target, I ignore PreferredHeight. 
3099      ; Note, if this is too small, the missile will turn too late to hit.  And, since we have a 2D 
3100      ; heart, being over the target counts as "there", so we'll give up and just go straight.
3101  
3102      DistanceToTargetForLock = 10 ; Short lock on, as it looks better flying.  jba.
3103    End
3104    Locomotor = SET_NORMAL TomahawkMissileLocomotor
3105  
3106    Geometry = Cylinder ; Since collision extents can't tilt, this is a little fake
3107    GeometryMajorRadius = 8.0
3108    GeometryHeight = 4.0
3109    GeometryIsSmall = Yes    
3110  
3111    Shadow = SHADOW_DECAL
3112  End
3113  
3114  ;------------------------------------------------------------------------------
3115  Object StrategyCenterArtilleryShell
3116  
3117    ; *** ART Parameters ***
3118    Draw = W3DModelDraw ModuleTag_01
3119      OkToChangeModelColor = Yes
3120      ConditionState = NONE
3121        Model = NVNUKECN_B
3122  
3123      End
3124    End
3125  
3126    ; ***DESIGN parameters ***
3127    DisplayName      = OBJECT:Missile
3128    EditorSorting   = SYSTEM
3129    VisionRange = 0.0  
3130    ArmorSet
3131      Conditions      = None
3132      Armor           = ProjectileArmor
3133      DamageFX        = None
3134    End
3135  
3136  
3137    ; *** ENGINEERING Parameters ***
3138    KindOf = PROJECTILE
3139    Body = ActiveBody ModuleTag_02
3140      MaxHealth       = 100.0
3141      InitialHealth   = 100.0
3142    End
3143  
3144  ; ---- begin Projectile death behaviors
3145    Behavior = InstantDeathBehavior DeathModuleTag_01
3146      DeathTypes = NONE +DETONATED
3147      ; we detonated normally.
3148      ; no FX, just quiet destroy ourselves
3149    End
3150    Behavior = InstantDeathBehavior DeathModuleTag_02
3151      DeathTypes = NONE +LASERED
3152      ; shot down by laser.
3153      FX         = FX_GenericMissileDisintegrate
3154      OCL        = OCL_GenericMissileDisintegrate
3155    End
3156    Behavior = InstantDeathBehavior DeathModuleTag_03
3157      DeathTypes = ALL -LASERED -DETONATED
3158      ; shot down by nonlaser.
3159      FX         = FX_GenericMissileDeath
3160    End
3161  ; ---- end Projectile death behaviors
3162  
3163    Behavior = PhysicsBehavior ModuleTag_04
3164      Mass = 1
3165    End
3166    Behavior = MissileAIUpdate ModuleTag_05
3167      TryToFollowTarget = No 
3168      FuelLifetime = 4000
3169      IgnitionDelay = 0
3170      IgnitionFX = FX_BuggyMissileIgnition
3171      InitialVelocity = 20                ; in dist/sec
3172      DistanceToTravelBeforeTurning = 40
3173      DistanceToTargetBeforeDiving = 50 ; When I hit this close to target, I ignore PreferredHeight. 
3174     ; Note, if this is too small, the missile will turn too late to hit.  And, since we have a 2D 
3175     ; heart, being over the target counts as "there", so we'll give up and just go straight.
3176    End
3177    Locomotor = SET_NORMAL NuclearCannonShellLocomotor
3178  
3179    Geometry = Cylinder ; Since collision extents can't tilt, this is a little fake
3180    GeometryMajorRadius = 4.0
3181    GeometryHeight = 4.0
3182    GeometryIsSmall = Yes    
3183  
3184    Shadow = SHADOW_DECAL
3185  End
3186  
3187  ;------------------------------------------------------------------------------
3188  Object MissileDefenderMissile
3189  
3190    ; *** ART Parameters ***
3191    Draw = W3DModelDraw ModuleTag_01
3192      OkToChangeModelColor = Yes
3193      DefaultConditionState
3194        Model = ExMsslTm
3195      End
3196      ConditionState = JAMMED
3197        ParticleSysBone = None SparksMedium
3198      End
3199    End
3200  
3201    ; ***DESIGN parameters ***
3202    DisplayName      = OBJECT:RangerTeamMissile
3203    EditorSorting   = SYSTEM
3204    VisionRange = 0.0  
3205    ArmorSet
3206      Conditions      = None
3207      Armor           = ProjectileArmor
3208      DamageFX        = None
3209    End
3210  
3211    ; *** ENGINEERING Parameters ***
3212    KindOf = PROJECTILE SMALL_MISSILE
3213    Body = ActiveBody ModuleTag_02
3214      MaxHealth       = 100.0
3215      InitialHealth   = 100.0
3216  
3217      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
3218      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
3219      ; A projectile is not disabled, but instead loses target and scatters
3220      SubdualDamageCap = 200
3221      SubdualDamageHealRate = 100000
3222      SubdualDamageHealAmount = 50
3223    End
3224  
3225  ; ---- begin Projectile death behaviors
3226    Behavior = InstantDeathBehavior DeathModuleTag_01
3227      DeathTypes = NONE +DETONATED
3228      ; we detonated normally.
3229      ; no FX, just quiet destroy ourselves
3230    End
3231    Behavior = InstantDeathBehavior DeathModuleTag_02
3232      DeathTypes = NONE +LASERED
3233      ; shot down by laser.
3234      FX         = FX_GenericMissileDisintegrate
3235      OCL        = OCL_GenericMissileDisintegrate
3236    End
3237    Behavior = InstantDeathBehavior DeathModuleTag_03
3238      DeathTypes = ALL -LASERED -DETONATED
3239      ; shot down by nonlaser.
3240      FX         = FX_GenericMissileDeath
3241    End
3242  ; ---- end Projectile death behaviors
3243      
3244    Behavior = PhysicsBehavior ModuleTag_06
3245      Mass = 1
3246    End
3247    Behavior = MissileAIUpdate ModuleTag_07
3248      TryToFollowTarget               = Yes;;;;;;;;;No 
3249      FuelLifetime                    = 3000
3250      InitialVelocity                 = 150                ; in dist/sec
3251      IgnitionDelay                   = 0
3252      DistanceToTravelBeforeTurning   = 3
3253      IgnitionFX                      = FX_BuggyMissileIgnition
3254    End
3255    Locomotor = SET_NORMAL MissileDefenderMissileLocomotor
3256    Geometry = Sphere
3257    GeometryIsSmall = Yes
3258    GeometryMajorRadius = 2.0
3259  
3260  End
3261  
3262  ;------------------------------------------------------------------------------
3263  Object TunnelDefenderMissile
3264  
3265    ; *** ART Parameters ***
3266    Draw = W3DModelDraw ModuleTag_01
3267      OkToChangeModelColor = Yes
3268      DefaultConditionState
3269        Model = EXStinger01
3270      End
3271      ConditionState = JAMMED
3272        ParticleSysBone = None SparksMedium
3273      End
3274    End
3275   
3276    ; ***DESIGN parameters ***
3277    EditorSorting   = SYSTEM
3278    VisionRange = 0.0  
3279    ArmorSet
3280      Conditions      = None
3281      Armor           = ProjectileArmor
3282      DamageFX        = None
3283    End
3284  
3285    ; *** ENGINEERING Parameters ***
3286    KindOf = PROJECTILE SMALL_MISSILE
3287    Body = ActiveBody ModuleTag_02
3288      MaxHealth       = 100.0
3289      InitialHealth   = 100.0
3290  
3291      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
3292      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
3293      ; A projectile is not disabled, but instead loses target and scatters
3294      SubdualDamageCap = 200
3295      SubdualDamageHealRate = 100000
3296      SubdualDamageHealAmount = 50
3297    End
3298  
3299  ; ---- begin Projectile death behaviors
3300    Behavior = InstantDeathBehavior DeathModuleTag_01
3301      DeathTypes = NONE +DETONATED
3302      ; we detonated normally.
3303      ; no FX, just quiet destroy ourselves
3304    End
3305    Behavior = InstantDeathBehavior DeathModuleTag_02
3306      DeathTypes = NONE +LASERED
3307      ; shot down by laser.
3308      FX         = FX_GenericMissileDisintegrate
3309      OCL        = OCL_GenericMissileDisintegrate
3310    End
3311    Behavior = InstantDeathBehavior DeathModuleTag_03
3312      DeathTypes = ALL -LASERED -DETONATED
3313      ; shot down by nonlaser.
3314      FX         = FX_GenericMissileDeath
3315    End
3316  ; ---- end Projectile death behaviors
3317  
3318    Behavior = WeaponBonusUpgrade ModuleTag_08
3319      TriggeredBy = Upgrade_GLAAPRockets
3320    End
3321      
3322    Behavior = PhysicsBehavior ModuleTag_06
3323      Mass = 1
3324    End
3325    Behavior = MissileAIUpdate ModuleTag_07
3326      TryToFollowTarget             = Yes;;;;;;;;;;No 
3327      FuelLifetime                  = 1250
3328      InitialVelocity               = 150                ; in dist/sec
3329      IgnitionDelay                 = 0
3330      DistanceToTravelBeforeTurning = 20
3331      IgnitionFX                    = FX_BuggyMissileIgnition
3332    End
3333    Locomotor = SET_NORMAL TunnelDefenderMissileLocomotor
3334  
3335    Geometry = Sphere
3336    GeometryIsSmall = Yes
3337    GeometryMajorRadius = 2.0
3338  
3339  End
3340  
3341  ;------------------------------------------------------------------------------
3342  Object TechnicalRPGMissile
3343  
3344    ; *** ART Parameters ***
3345    Draw = W3DModelDraw ModuleTag_01
3346      OkToChangeModelColor = Yes
3347      DefaultConditionState
3348        Model = EXStinger01
3349      End
3350    End
3351   
3352    ; ***DESIGN parameters ***
3353    EditorSorting     = SYSTEM
3354    VisionRange       = 0.0  
3355    ArmorSet
3356      Conditions      = None
3357      Armor           = ProjectileArmor
3358      DamageFX        = None
3359    End
3360  
3361    ; *** ENGINEERING Parameters ***
3362    KindOf = PROJECTILE SMALL_MISSILE
3363    Body = ActiveBody ModuleTag_02
3364      MaxHealth       = 100.0
3365      InitialHealth   = 100.0
3366  
3367      SubdualDamageCap = 200
3368      SubdualDamageHealRate = 100000
3369      SubdualDamageHealAmount = 50
3370    End
3371  
3372  ; ---- begin Projectile death behaviors
3373    Behavior = InstantDeathBehavior DeathModuleTag_01
3374      DeathTypes = NONE +DETONATED
3375      ; we detonated normally.
3376      ; no FX, just quiet destroy ourselves
3377    End
3378    Behavior = InstantDeathBehavior DeathModuleTag_02
3379      DeathTypes = NONE +LASERED
3380      ; shot down by laser.
3381      FX         = FX_GenericMissileDisintegrate
3382      OCL        = OCL_GenericMissileDisintegrate
3383    End
3384    Behavior = InstantDeathBehavior DeathModuleTag_03
3385      DeathTypes = ALL -LASERED -DETONATED
3386      ; shot down by nonlaser.
3387      FX         = FX_GenericMissileDeath
3388    End
3389  ; ---- end Projectile death behaviors
3390      
3391    Behavior = PhysicsBehavior ModuleTag_06
3392      Mass = 1
3393    End
3394    Behavior = MissileAIUpdate ModuleTag_07
3395      TryToFollowTarget             = Yes
3396      FuelLifetime                  = 1000
3397      InitialVelocity               = 150                ; in dist/sec
3398      IgnitionDelay                 = 0
3399      DistanceToTravelBeforeTurning = 20
3400      IgnitionFX                    = FX_BuggyMissileIgnition
3401    End
3402    Locomotor = SET_NORMAL TechnicalRPGMissileLocomotor
3403  
3404    Geometry = Sphere
3405    GeometryIsSmall = Yes
3406    GeometryMajorRadius = 2.0
3407  
3408  End
3409  
3410  ;------------------------------------------------------------------------------
3411  Object TankHunterMissile
3412  
3413    ; *** ART Parameters ***
3414    Draw = W3DModelDraw ModuleTag_01
3415      OkToChangeModelColor = Yes
3416      DefaultConditionState
3417        Model = EXStinger01
3418      End
3419      ConditionState = JAMMED
3420        ParticleSysBone = None SparksMedium
3421      End
3422    End
3423  
3424    ; ***DESIGN parameters ***
3425    EditorSorting   = SYSTEM
3426    VisionRange = 0.0  
3427    ArmorSet
3428      Conditions      = None
3429      Armor           = ProjectileArmor
3430      DamageFX        = None
3431    End
3432  
3433    ; *** ENGINEERING Parameters ***
3434    KindOf = PROJECTILE SMALL_MISSILE
3435    Body = ActiveBody ModuleTag_02
3436      MaxHealth       = 100.0
3437      InitialHealth   = 100.0
3438  
3439      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
3440      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
3441      ; A projectile is not disabled, but instead loses target and scatters
3442      SubdualDamageCap = 200
3443      SubdualDamageHealRate = 100000
3444      SubdualDamageHealAmount = 50
3445    End
3446  
3447  ; ---- begin Projectile death behaviors
3448    Behavior = InstantDeathBehavior DeathModuleTag_01
3449      DeathTypes = NONE +DETONATED
3450      ; we detonated normally.
3451      ; no FX, just quiet destroy ourselves
3452    End
3453    Behavior = InstantDeathBehavior DeathModuleTag_02
3454      DeathTypes = NONE +LASERED
3455      ; shot down by laser.
3456      FX         = FX_GenericMissileDisintegrate
3457      OCL        = OCL_GenericMissileDisintegrate
3458    End
3459    Behavior = InstantDeathBehavior DeathModuleTag_03
3460      DeathTypes = ALL -LASERED -DETONATED
3461      ; shot down by nonlaser.
3462      FX         = FX_GenericMissileDeath
3463    End
3464  ; ---- end Projectile death behaviors
3465      
3466    Behavior = PhysicsBehavior ModuleTag_06
3467      Mass = 1
3468    End
3469    Behavior = MissileAIUpdate ModuleTag_07
3470      TryToFollowTarget = Yes;;;;;;;;;;;;No 
3471      FuelLifetime = 1250
3472      InitialVelocity = 150                ; in dist/sec
3473      IgnitionDelay = 0
3474      DistanceToTravelBeforeTurning = 20
3475      IgnitionFX = FX_BuggyMissileIgnition
3476    End
3477    Locomotor = SET_NORMAL TankHunterMissileLocomotor
3478  
3479    Geometry = Sphere
3480    GeometryIsSmall = Yes
3481    GeometryMajorRadius = 2.0
3482  
3483  End
3484  
3485  
3486  
3487  
3488  
3489  ;------------------------------------------------------------------------------
3490  Object ToxinTruckStreamProjectile
3491  
3492  ; Explanation - Particles can't do damage, so this is a fast shooting low 
3493  ; damage invisible missile launcher with a toxin trail for exhaust
3494  
3495    ; *** ART Parameters ***
3496    Draw = W3DModelDraw ModuleTag_01
3497      DefaultConditionState
3498        Model = NONE 
3499      End
3500    End
3501    ; Must have a draw module to be allowed to draw detonation FX
3502  
3503    ; ***DESIGN parameters ***
3504    EditorSorting     = SYSTEM
3505    VisionRange       = 0.0  
3506    ArmorSet
3507      Conditions      = None
3508      Armor           = ProjectileArmor
3509      DamageFX        = None
3510    End
3511  
3512    ; *** ENGINEERING Parameters ***
3513    KindOf            = PROJECTILE
3514    Body              = ActiveBody ModuleTag_02
3515      MaxHealth       = 100.0
3516      InitialHealth   = 100.0
3517    End
3518  
3519    Behavior = DestroyDie ModuleTag_03
3520      ;nothing
3521    End
3522      
3523    Behavior = PhysicsBehavior ModuleTag_04
3524      Mass                = 1
3525      AllowCollideForce   = No  ; toxins collide, but never apply forces when they do so
3526    End
3527  
3528    Behavior = MissileAIUpdate ModuleTag_05
3529      TryToFollowTarget               = No 
3530      FuelLifetime                    = 500
3531      InitialVelocity                 = 120                ; in dist/sec
3532      IgnitionDelay                   = 0
3533      DistanceToTravelBeforeTurning   = 2
3534      GarrisonHitKillRequiredKindOf   = INFANTRY
3535      GarrisonHitKillForbiddenKindOf  = NONE
3536      GarrisonHitKillCount            = 2
3537      GarrisonHitKillFX               = FX_ToxinStreamGarrisonBuildingHit
3538    End
3539  
3540    Locomotor = SET_NORMAL ToxinTruckStreamLocomotor
3541  
3542    Behavior = BoneFXUpdate ModuleTag_06
3543      PristineParticleSystem1  = bone:NULL OnlyOnce:Yes  0  0 PSys:ToxinTrail01 ; Covers gap at beginning of line
3544    End
3545  
3546    Behavior = BoneFXDamage ModuleTag_07
3547      ;nothing
3548    End
3549  
3550    Geometry = Sphere
3551    GeometryIsSmall = Yes
3552    GeometryMajorRadius = 2.0
3553  
3554  End
3555  
3556  ;------------------------------------------------------------------------------
3557  Object ToxinTruckStreamProjectileUpgraded
3558  
3559  ; Explanation - Particles can't do damage, so this is a fast shooting low 
3560  ; damage invisible missile launcher with a toxin trail for exhaust
3561  
3562    ; *** ART Parameters ***
3563    Draw = W3DModelDraw ModuleTag_01
3564      DefaultConditionState
3565        Model = NONE 
3566      End
3567    End
3568    ; Must have a draw module to be allowed to draw detonation FX
3569  
3570    ; ***DESIGN parameters ***
3571    EditorSorting     = SYSTEM
3572    VisionRange       = 0.0  
3573    ArmorSet
3574      Conditions      = None
3575      Armor           = ProjectileArmor
3576      DamageFX        = None
3577    End
3578  
3579    ; *** ENGINEERING Parameters ***
3580    KindOf            = PROJECTILE
3581    Body              = ActiveBody ModuleTag_02
3582      MaxHealth       = 100.0
3583      InitialHealth   = 100.0
3584    End
3585  
3586    Behavior = DestroyDie ModuleTag_03
3587      ;nothing
3588    End
3589      
3590    Behavior = PhysicsBehavior ModuleTag_04
3591      Mass = 1
3592      AllowCollideForce = No  ; flames collide, but never apply forces when they do so
3593    End
3594  
3595    Behavior = MissileAIUpdate ModuleTag_05
3596      TryToFollowTarget               = No 
3597      FuelLifetime                    = 500
3598      InitialVelocity                 = 120                ; in dist/sec
3599      IgnitionDelay                   = 0
3600      DistanceToTravelBeforeTurning   = 2
3601      GarrisonHitKillRequiredKindOf   = INFANTRY
3602      GarrisonHitKillForbiddenKindOf  = NONE
3603      GarrisonHitKillCount            = 2
3604      GarrisonHitKillFX               = FX_ToxinStreamUpgradedGarrisonBuildingHit
3605    End
3606    Locomotor = SET_NORMAL ToxinTruckStreamLocomotor
3607  
3608    Behavior = BoneFXUpdate ModuleTag_06
3609      PristineParticleSystem1  = bone:NULL OnlyOnce:Yes  0  0 PSys:AnthraxTrail01 ; Covers gap at beginning of line
3610    End
3611  
3612    Behavior = BoneFXDamage ModuleTag_07
3613      ;nothing
3614    End
3615  
3616    Geometry = Sphere
3617    GeometryIsSmall = Yes
3618    GeometryMajorRadius = 2.0
3619  
3620  End
3621  
3622  ;------------------------------------------------------------------------------
3623  Object ToxinTruckProjectileStream
3624  
3625    ; *** ART Parameters ***
3626    Draw = W3DProjectileStreamDraw ModuleTag_01
3627      Texture       = EXToxinStream.tga
3628      Width         = 1.5
3629      TileFactor    = 2.0 ; put the texture on the line segment this many times
3630      ScrollRate    = 6.0; scroll the texture offset this fast
3631      MaxSegments   = 14 ; only play the first X if there are a ton of them. 0 means play all
3632    End
3633  
3634    ; *** ENGINEERING Parameters ***
3635    KindOf = INERT
3636    Behavior = ProjectileStreamUpdate ModuleTag_02
3637      ;nothing
3638    End
3639  
3640  End
3641  
3642  
3643  ;------------------------------------------------------------------------------
3644  Object ToxinTruckProjectileStreamUpgraded
3645  
3646    ; *** ART Parameters ***
3647    Draw = W3DProjectileStreamDraw ModuleTag_01
3648      Texture       = EXAnthraxStream.tga
3649      Width         = 1.5
3650      TileFactor    = 2.0 ; put the texture on the line segment this many times
3651      ScrollRate    = 6.0; scroll the texture offset this fast
3652      MaxSegments   = 14 ; only play the first X if there are a ton of them. 0 means play all
3653    End
3654  
3655    ; *** ENGINEERING Parameters ***
3656    KindOf = INERT
3657    Behavior = ProjectileStreamUpdate ModuleTag_02
3658      ;nothing
3659    End
3660  
3661  End
3662  
3663  ;------------------------------------------------------------------------------
3664  Object ToxinTruckSprayProjectile
3665  
3666  ; Explanation - Particles can't do damage, so this is a fast shooting low 
3667  ; damage invisible missile launcher with a flame trail for exhaust
3668  
3669    ; *** ART Parameters ***
3670    Draw = W3DModelDraw ModuleTag_01
3671      DefaultConditionState
3672        Model = NONE 
3673      End
3674    End
3675    ; Must have a draw module to be allowed to draw detonation FX
3676  
3677    ; ***DESIGN parameters ***
3678    EditorSorting     = SYSTEM
3679    VisionRange       = 0.0  
3680    ArmorSet
3681      Conditions      = None
3682      Armor           = ProjectileArmor
3683      DamageFX        = None
3684    End
3685  
3686    ; *** ENGINEERING Parameters ***
3687    KindOf = PROJECTILE
3688    Body = ActiveBody ModuleTag_02
3689      MaxHealth       = 100.0
3690      InitialHealth   = 100.0
3691    End
3692  
3693    Behavior = DestroyDie ModuleTag_03
3694      ;nothing
3695    End
3696      
3697    Behavior = PhysicsBehavior ModuleTag_04
3698      Mass = 50
3699      AllowCollideForce = No  ; flames collide, but never apply forces when they do so
3700    End
3701  
3702    Behavior = MissileAIUpdate ModuleTag_05
3703      TryToFollowTarget = No 
3704      FuelLifetime = 1
3705      InitialVelocity = 1                ; in dist/sec
3706      IgnitionDelay = 0
3707      DistanceToTravelBeforeTurning = 0
3708      DistanceToTargetForLock = 0  ; If it gets within 100 of the target, it kills the target.
3709  
3710    End
3711  
3712    Locomotor = SET_NORMAL ToxinTruckDribbleLocomotor
3713  
3714    Geometry = Sphere
3715    GeometryIsSmall = Yes
3716    GeometryMajorRadius = 2.0
3717  
3718  End
3719  
3720  ;------------------------------------------------------------------------------
3721  Object CleanupHazardProjectileStream
3722  
3723    ; *** ART Parameters ***
3724    Draw = W3DProjectileStreamDraw ModuleTag_01
3725      Texture = EXCleanupStream.tga
3726      Width = 1.5
3727      TileFactor = 2.0 ; put the texture on the line segment this many times
3728      ScrollRate = 6.0; scroll the texture offset this fast
3729      MaxSegments = 14 ; only play the first X if there are a ton of them. 0 means play all
3730    End
3731  
3732    ; *** ENGINEERING Parameters ***
3733    KindOf = INERT
3734    Behavior = ProjectileStreamUpdate ModuleTag_02
3735      ;nothing
3736    End
3737  
3738  End
3739  
3740  ;------------------------------------------------------------------------------
3741  Object CleanupStreamProjectile
3742  
3743  ; Explanation - Particles can't do damage, so this is a fast shooting low 
3744  ; damage invisible missile launcher with a flame trail for exhaust
3745  
3746    ; *** ART Parameters ***
3747    Draw = W3DModelDraw ModuleTag_01
3748      DefaultConditionState
3749        Model = NONE 
3750      End
3751    End
3752    ; Must have a draw module to be allowed to draw detonation FX
3753  
3754    ; ***DESIGN parameters ***
3755    EditorSorting     = SYSTEM
3756    VisionRange       = 0.0  
3757    ArmorSet
3758      Conditions      = None
3759      Armor           = ProjectileArmor
3760      DamageFX        = None
3761    End
3762  
3763    ; *** ENGINEERING Parameters ***
3764    KindOf            = PROJECTILE
3765    Body              = ActiveBody ModuleTag_02
3766      MaxHealth       = 100.0
3767      InitialHealth   = 100.0
3768    End
3769  
3770    Behavior = DestroyDie ModuleTag_03
3771      ;nothing
3772    End
3773      
3774    Behavior = PhysicsBehavior ModuleTag_04
3775      Mass = 1
3776      AllowCollideForce = No  ; flames collide, but never apply forces when they do so
3777    End
3778  
3779    Behavior = MissileAIUpdate ModuleTag_05
3780      TryToFollowTarget = No 
3781      FuelLifetime = 600
3782      InitialVelocity = 120                ; in dist/sec
3783      IgnitionDelay = 0
3784      DistanceToTravelBeforeTurning = 2
3785    End
3786  
3787    Locomotor = SET_NORMAL ToxinTruckStreamLocomotor
3788  
3789    Behavior = BoneFXUpdate ModuleTag_06
3790      PristineParticleSystem1  = bone:NULL OnlyOnce:Yes  0  0 PSys:CleanupTrail01 ; Covers gap at beginning of line
3791    End
3792  
3793    Behavior = BoneFXDamage ModuleTag_07
3794      ;nothing
3795    End
3796  
3797    Geometry = Sphere
3798    GeometryIsSmall = Yes
3799    GeometryMajorRadius = 2.0
3800  
3801  End
3802  
3803  ;------------------------------------------------------------------------------
3804  Object BioHazardCleanupStreamProjectile
3805  
3806  ; Explanation - Particles can't do damage, so this is a fast shooting low 
3807  ; damage invisible missile launcher with a flame trail for exhaust
3808  
3809    ; *** ART Parameters ***
3810    Draw = W3DModelDraw ModuleTag_01
3811      DefaultConditionState
3812        Model = NONE 
3813      End
3814    End
3815    ; Must have a draw module to be allowed to draw detonation FX
3816  
3817    ; ***DESIGN parameters ***
3818    EditorSorting     = SYSTEM
3819    VisionRange       = 0.0  
3820    ArmorSet
3821      Conditions      = None
3822      Armor           = ProjectileArmor
3823      DamageFX        = None
3824    End
3825  
3826    ; *** ENGINEERING Parameters ***
3827    KindOf            = PROJECTILE
3828    Body              = ActiveBody ModuleTag_02
3829      MaxHealth       = 100.0
3830      InitialHealth   = 100.0
3831    End
3832  
3833    Behavior = DestroyDie ModuleTag_03
3834      ;nothing
3835    End
3836      
3837    Behavior = PhysicsBehavior ModuleTag_04
3838      Mass = 1
3839      AllowCollideForce = No  ; flames collide, but never apply forces when they do so
3840    End
3841  
3842    Behavior = MissileAIUpdate ModuleTag_05
3843      TryToFollowTarget = No 
3844      FuelLifetime = 500
3845      InitialVelocity = 120                ; in dist/sec
3846      IgnitionDelay = 0
3847      DistanceToTravelBeforeTurning = 2
3848      ;GarrisonHitKillRequiredKindOf = INFANTRY
3849      ;GarrisonHitKillForbiddenKindOf = NONE
3850      ;GarrisonHitKillCount = 2
3851      ;GarrisonHitKillFX = FX_ToxinStreamGarrisonBuildingHit
3852    End
3853  
3854    Locomotor = SET_NORMAL FasterToxinTruckStreamLocomotor
3855  
3856  
3857    Behavior = BoneFXUpdate ModuleTag_06
3858      PristineParticleSystem1  = bone:NULL OnlyOnce:Yes  0  0 PSys:CleanupTrail01 ; Covers gap at beginning of line
3859    End
3860  
3861    Behavior = BoneFXDamage ModuleTag_07
3862      ;nothing
3863    End
3864  
3865    Geometry = Sphere
3866    GeometryIsSmall = Yes
3867    GeometryMajorRadius = 2.0
3868  End
3869  
3870  
3871  
3872  
3873  ;------------------------------------------------------------------------------
3874  Object DragonTankFlameProjectile
3875  
3876  ; Explanation - Particles can't do damage, so this is a fast shooting low 
3877  ; damage invisible missile launcher with a flame trail for exhaust
3878  
3879    ; *** ART Parameters ***
3880    Draw = W3DModelDraw ModuleTag_01
3881      OkToChangeModelColor = Yes
3882      ConditionState = NONE
3883        Model = NULL 
3884      End
3885    End
3886    ; Must have a draw module to be allowed to draw detonation FX
3887  
3888    ; ***DESIGN parameters ***
3889    EditorSorting     = SYSTEM
3890    VisionRange       = 0.0  
3891    ArmorSet
3892      Conditions      = None
3893      Armor           = ProjectileArmor
3894      DamageFX        = None
3895    End
3896  
3897    ; *** ENGINEERING Parameters ***
3898    KindOf            = PROJECTILE
3899    Body              = ActiveBody ModuleTag_02
3900      MaxHealth       = 100.0
3901      InitialHealth   = 100.0
3902    End
3903  
3904    Behavior = DestroyDie ModuleTag_03
3905      ;nothing
3906    End
3907      
3908    Behavior = PhysicsBehavior ModuleTag_04
3909      Mass = 1
3910      AllowCollideForce = No  ; flames collide, but never apply forces when they do so
3911    End
3912    Behavior = MissileAIUpdate ModuleTag_05
3913      TryToFollowTarget = No 
3914      FuelLifetime = 350
3915      DetonateOnNoFuel = Yes
3916      InitialVelocity = 120                ; in dist/sec
3917      IgnitionDelay = 0
3918      DistanceToTravelBeforeTurning = 2
3919      GarrisonHitKillRequiredKindOf = INFANTRY
3920      GarrisonHitKillForbiddenKindOf = NONE
3921      GarrisonHitKillCount = 2
3922      GarrisonHitKillFX = FX_DragonFlameGarrisonBuildingHit
3923      DistanceToTargetForLock = 0  ; If it gets within 100 of the target, it kills the target.
3924  
3925    End
3926    Locomotor = SET_NORMAL DragonTankFlameLocomotor
3927  
3928    Behavior = BoneFXUpdate ModuleTag_06
3929      PristineParticleSystem1  = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail01 ; Covers gap at beginning of line
3930      PristineParticleSystem2  = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail02
3931      PristineParticleSystem3  = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail03
3932      PristineParticleSystem4 = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail04
3933      PristineParticleSystem5 = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail06
3934  
3935      PristineParticleSystem6 = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerSmoke01
3936    End
3937  
3938    Behavior = BoneFXDamage ModuleTag_07
3939      ;nothing
3940    End
3941  
3942    Geometry = Sphere
3943    GeometryIsSmall = Yes
3944    GeometryMajorRadius = 2.0
3945  
3946  End
3947  
3948  ;------------------------------------------------------------------------------
3949  Object FlamethrowerProjectileStream
3950  
3951    ; *** ART Parameters ***
3952    Draw = W3DProjectileStreamDraw ModuleTag_01
3953      Texture = EXfthrowerStream.tga
3954      Width = 1.5
3955      TileFactor = 3.0 ; put the texture on the line segment this many times
3956      ScrollRate = 2.0; scroll the texture offset this fast
3957      MaxSegments = 4 ; only play the first X if there are a ton of them. 0 means play all
3958    End
3959  
3960    ; *** ENGINEERING Parameters ***
3961    KindOf = INERT
3962    Behavior = ProjectileStreamUpdate ModuleTag_02
3963      ;nothing
3964    End
3965  
3966  End
3967  
3968  ;------------------------------------------------------------------------------
3969  Object DragonTankFlameProjectileUpgraded
3970  
3971  ; Explanation - Particles can't do damage, so this is a fast shooting low 
3972  ; damage invisible missile launcher with a flame trail for exhaust
3973  
3974    ; *** ART Parameters ***
3975    Draw = W3DModelDraw ModuleTag_01
3976      OkToChangeModelColor = Yes
3977      ConditionState = NONE
3978        Model = NULL 
3979      End
3980    End
3981    ; Must have a draw module to be allowed to draw detonation FX
3982  
3983    ; ***DESIGN parameters ***
3984    EditorSorting     = SYSTEM
3985    VisionRange       = 0.0  
3986    ArmorSet
3987      Conditions      = None
3988      Armor           = ProjectileArmor
3989      DamageFX        = None
3990    End
3991  
3992    ; *** ENGINEERING Parameters ***
3993    KindOf            = PROJECTILE
3994    Body              = ActiveBody ModuleTag_02
3995      MaxHealth       = 100.0
3996      InitialHealth   = 100.0
3997    End
3998  
3999    Behavior = DestroyDie ModuleTag_03
4000      ;nothing
4001    End
4002      
4003    Behavior = PhysicsBehavior ModuleTag_04
4004      Mass = 1
4005      AllowCollideForce = No  ; flames collide, but never apply forces when they do so
4006    End
4007    Behavior = MissileAIUpdate ModuleTag_05
4008      TryToFollowTarget = No 
4009      FuelLifetime = 350
4010      DetonateOnNoFuel = Yes
4011      InitialVelocity = 120                ; in dist/sec
4012      IgnitionDelay = 0
4013      DistanceToTravelBeforeTurning = 2
4014      GarrisonHitKillRequiredKindOf = INFANTRY
4015      GarrisonHitKillForbiddenKindOf = NONE
4016      GarrisonHitKillCount = 2
4017      GarrisonHitKillFX = FX_DragonFlameGarrisonBuildingHit
4018      DistanceToTargetForLock = 0  ; If it gets within 100 of the target, it kills the target.
4019  
4020    End
4021    Locomotor = SET_NORMAL DragonTankFlameLocomotor
4022  
4023    Behavior = BoneFXUpdate ModuleTag_06
4024      PristineParticleSystem1  = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail01Upgraded ; Covers gap at beginning of line
4025      PristineParticleSystem2  = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail02Upgraded
4026      PristineParticleSystem3  = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail03Upgraded
4027      PristineParticleSystem4 = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail04Upgraded
4028      PristineParticleSystem5 = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerTrail06Upgraded
4029  
4030      PristineParticleSystem6 = bone:NULL OnlyOnce:Yes  0  0 PSys:FlameThrowerSmoke01
4031    End
4032  
4033    Behavior = BoneFXDamage ModuleTag_07
4034      ;nothing
4035    End
4036  
4037    Geometry = Sphere
4038    GeometryIsSmall = Yes
4039    GeometryMajorRadius = 2.0
4040  
4041  End
4042  
4043  ;------------------------------------------------------------------------------
4044  Object FlamethrowerProjectileStreamUpgraded
4045  
4046    ; *** ART Parameters ***
4047    Draw = W3DProjectileStreamDraw ModuleTag_01
4048      Texture = EXfthrowerStreamUpgraded.tga
4049      Width = 1.5
4050      TileFactor = 3.0 ; put the texture on the line segment this many times
4051      ScrollRate = 2.0; scroll the texture offset this fast
4052      MaxSegments = 4 ; only play the first X if there are a ton of them. 0 means play all
4053    End
4054  
4055    ; *** ENGINEERING Parameters ***
4056    KindOf = INERT
4057    Behavior = ProjectileStreamUpdate ModuleTag_02
4058      ;nothing
4059    End
4060  
4061  End
4062  
4063  ;------------------------------------------------------------------------------
4064  Object PointDefenseLaserBeam
4065    ; *** ART Parameters ***
4066    Draw = W3DLaserDraw ModuleTag_01
4067      Texture = EXLaser4.tga
4068      NumBeams = 4                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4069  
4070      InnerBeamWidth = 0.005            ;The total width of beam
4071      InnerColor = R:255 G:0 B:180 A:120  ;The inside color of the laser (hot)
4072  
4073      OuterBeamWidth = 10            ;The total width of beam
4074      OuterColor = R:100 G:0 B:100  A:100 ;The outside color of the laser (cool)
4075      
4076      Tile = Yes                                ;The height of the texture will determine how many times to tile the texture to fit without scaling.
4077      ScrollRate = -2500                           ;Scrolls the texture offset this fast -- towards(-) away(+)
4078      Segments = 1                              ;Number of segments -- more segments give smoother curve (but more joints) Current max: 20
4079      SegmentOverlapRatio = 0                   ;This value overlaps(+) or separates(-) the segments by ratio
4080      TilingScalar = -3                          ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)     
4081     
4082     ;MaxIntensityLifetime = 2000               ;Laser stays at max intensity for specified time in ms.
4083     ;FadeLifetime = 250                        ;Laser will fade and delete.
4084     ;@todo -- add shot ability functionality (instead of instant point A to B)
4085    End
4086  
4087    KindOf = IMMOBILE
4088    ClientUpdate = LaserUpdate ModuleTag_02
4089      MuzzleParticleSystem = PaladinPointDefenseLaserFlare
4090    End
4091  
4092    ;Used as a weapon, this is essentially a fast pulse laser. Adjusting
4093    ;the lifetime values will determine how long it renders. The damage
4094    ;is applied immediately, so lifetime doesn't matter.
4095    Behavior = LifetimeUpdate ModuleTag_03
4096      MinLifetime = 95   ; min lifetime in msec
4097      MaxLifetime = 95   ; max lifetime in msec
4098    End
4099  End
4100  
4101  
4102  ;------------------------------------------------------------------------------
4103  Object LaserBeam
4104    ; *** ART Parameters ***
4105    Draw = W3DLaserDraw ModuleTag_01
4106      Texture = EXLaser.tga
4107      NumBeams = 3                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4108  
4109      InnerBeamWidth = 0.4            ;The total width of beam
4110      InnerColor = R:255 G:255 B:255 A:250  ;The inside color of the laser (hot)
4111  
4112      OuterBeamWidth = 1.2            ;The total width of beam
4113      OuterColor = R:255 G:0 B:0  A:150 ;The outside color of the laser (cool)
4114      
4115      ;MaxIntensityLifetime = 2000     ;Laser stays at max intensity for specified time in ms.
4116      ;FadeLifetime = 0                ;Laser will fade and delete.
4117  
4118      ;@todo -- add shot ability functionality (instead of instant point A to B)
4119    End
4120  
4121    KindOf = IMMOBILE
4122    ClientUpdate = LaserUpdate ModuleTag_02
4123      MuzzleParticleSystem = GenericLaserFlare
4124      TargetParticleSystem = GenericLaserFlare
4125    End
4126  End
4127  
4128  ;------------------------------------------------------------------------------
4129  Object ParticleUplinkCannon_MediumConnectorLaser
4130    ; *** ART Parameters ***
4131    Draw = W3DLaserDraw ModuleTag_01
4132      Texture = EXLaser.tga
4133      NumBeams = 4                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4134  
4135      InnerBeamWidth = 0.4            ;The total width of beam
4136      InnerColor = R:255 G:255 B:255 A:250  ;The inside color of the laser (hot)
4137  
4138      OuterBeamWidth = 1.2            ;The total width of beam
4139      OuterColor = R:0 G:0 B:255  A:150 ;The outside color of the laser (cool)
4140      
4141      ;MaxIntensityLifetime = 2000     ;Laser stays at max intensity for specified time in ms.
4142      ;FadeLifetime = 0                ;Laser will fade and delete.
4143  
4144      ;@todo -- add shot ability functionality (instead of instant point A to B)
4145    End
4146  
4147    KindOf = IMMOBILE
4148  
4149    ClientUpdate = LaserUpdate ModuleTag_02
4150      ;MuzzleParticleSystem = None
4151      ;TargetParticleSystem = None
4152    End
4153  End
4154  
4155  ;------------------------------------------------------------------------------
4156  Object ParticleUplinkCannon_IntenseConnectorLaser
4157    ; *** ART Parameters ***
4158    Draw = W3DLaserDraw ModuleTag_01
4159      Texture = EXLaser.tga
4160      NumBeams = 5                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4161  
4162      InnerBeamWidth = 0.6            ;The total width of beam
4163      InnerColor = R:255 G:255 B:255 A:250  ;The inside color of the laser (hot)
4164  
4165      OuterBeamWidth = 2.0            ;The total width of beam
4166      OuterColor = R:0 G:0 B:255  A:150 ;The outside color of the laser (cool)
4167      
4168      ;MaxIntensityLifetime = 2000     ;Laser stays at max intensity for specified time in ms.
4169      ;FadeLifetime = 0                ;Laser will fade and delete.
4170  
4171      ;@todo -- add shot ability functionality (instead of instant point A to B)
4172    End
4173  
4174    KindOf = IMMOBILE
4175  
4176    ClientUpdate = LaserUpdate ModuleTag_02
4177      ;MuzzleParticleSystem = None
4178      ;TargetParticleSystem = None
4179    End
4180  End
4181  
4182  ;------------------------------------------------------------------------------
4183  Object ParticleUplinkCannon_OrbitalLaser
4184    ; *** ART Parameters ***
4185    Draw = W3DLaserDraw ModuleTag_01
4186      Texture = EXNoise02.tga
4187      NumBeams = 12                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4188  
4189      Tile = Yes                        ;The height of the texture will determine how many times to tile the texture to fit without scaling.
4190      ScrollRate = -1.75                ;Scrolls the texture offset this fast -- towards(-) away(+)
4191      TilingScalar = 0.15               ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)
4192  
4193      InnerBeamWidth = 0.6            ;The total width of beam
4194      InnerColor = R:255 G:255 B:255 A:250  ;The inside color of the laser (hot)
4195  
4196      OuterBeamWidth = 26.0            ;The total width of beam
4197      OuterColor = R:0 G:0 B:255  A:150 ;The outside color of the laser (cool)
4198      
4199      ;MaxIntensityLifetime = 2000     ;Laser stays at max intensity for specified time in ms.
4200      ;FadeLifetime = 0                ;Laser will fade and delete.
4201  
4202      ;@todo -- add shot ability functionality (instead of instant point A to B)
4203    End
4204  
4205    ; *** DESIGN Parameters ***
4206    VisionRange = 100
4207    ShroudClearingRange = 120
4208  
4209    ; *** ENGINEERING Parameters ***
4210    KindOf = IMMOBILE
4211  
4212    ClientUpdate = LaserUpdate ModuleTag_02
4213      ;MuzzleParticleSystem = None
4214      ;TargetParticleSystem = None
4215    End
4216  End
4217  
4218  ;------------------------------------------------------------------------------
4219  Object SupW_ParticleUplinkCannon_MediumConnectorLaser
4220    ; *** ART Parameters ***
4221    Draw = W3DLaserDraw ModuleTag_01
4222      Texture = EXLaser.tga
4223      NumBeams = 4                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4224  
4225      InnerBeamWidth = 0.4            ;The total width of beam
4226      InnerColor = R:255 G:255 B:255 A:250  ;The inside color of the laser (hot)
4227  
4228      OuterBeamWidth = 1.2            ;The total width of beam
4229      OuterColor = R:255 G:0 B:255  A:150 ;The outside color of the laser (cool)
4230      
4231      ;MaxIntensityLifetime = 2000     ;Laser stays at max intensity for specified time in ms.
4232      ;FadeLifetime = 0                ;Laser will fade and delete.
4233  
4234      ;@todo -- add shot ability functionality (instead of instant point A to B)
4235    End
4236  
4237    KindOf = IMMOBILE
4238  
4239    ClientUpdate = LaserUpdate ModuleTag_02
4240      ;MuzzleParticleSystem = None
4241      ;TargetParticleSystem = None
4242    End
4243  End
4244  
4245  ;------------------------------------------------------------------------------
4246  Object SupW_ParticleUplinkCannon_IntenseConnectorLaser
4247    ; *** ART Parameters ***
4248    Draw = W3DLaserDraw ModuleTag_01
4249      Texture = EXLaser.tga
4250      NumBeams = 5                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4251  
4252      InnerBeamWidth = 0.6            ;The total width of beam
4253      InnerColor = R:255 G:255 B:255 A:250  ;The inside color of the laser (hot)
4254  
4255      OuterBeamWidth = 2.0            ;The total width of beam
4256      OuterColor = R:255 G:0 B:255  A:150 ;The outside color of the laser (cool)
4257      
4258      ;MaxIntensityLifetime = 2000     ;Laser stays at max intensity for specified time in ms.
4259      ;FadeLifetime = 0                ;Laser will fade and delete.
4260  
4261      ;@todo -- add shot ability functionality (instead of instant point A to B)
4262    End
4263  
4264    KindOf = IMMOBILE
4265  
4266    ClientUpdate = LaserUpdate ModuleTag_02
4267      ;MuzzleParticleSystem = None
4268      ;TargetParticleSystem = None
4269    End
4270  End
4271  
4272  ;------------------------------------------------------------------------------
4273  Object SupW_ParticleUplinkCannon_OrbitalLaser
4274    ; *** ART Parameters ***
4275    Draw = W3DLaserDraw ModuleTag_01
4276      Texture = EXNoise02.tga
4277      NumBeams = 12                    ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data.
4278  
4279      Tile = Yes                        ;The height of the texture will determine how many times to tile the texture to fit without scaling.
4280      ScrollRate = -1.75                ;Scrolls the texture offset this fast -- towards(-) away(+)
4281      TilingScalar = 0.15               ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)
4282  
4283      InnerBeamWidth = 0.6            ;The total width of beam
4284      InnerColor = R:255 G:255 B:255 A:250  ;The inside color of the laser (hot)
4285  
4286      OuterBeamWidth = 26.0            ;The total width of beam
4287      OuterColor = R:255 G:0 B:255  A:150 ;The outside color of the laser (cool)
4288      
4289      ;MaxIntensityLifetime = 2000     ;Laser stays at max intensity for specified time in ms.
4290      ;FadeLifetime = 0                ;Laser will fade and delete.
4291  
4292      ;@todo -- add shot ability functionality (instead of instant point A to B)
4293    End
4294  
4295    ; *** DESIGN Parameters ***
4296    VisionRange = 100
4297    ShroudClearingRange = 120
4298  
4299    ; *** ENGINEERING Parameters ***
4300    KindOf = IMMOBILE
4301  
4302    ClientUpdate = LaserUpdate ModuleTag_02
4303      ;MuzzleParticleSystem = None
4304      ;TargetParticleSystem = None
4305    End
4306  End
4307  
4308  ;------------------------------------------------------------------------------
4309  Object BinaryDataStream
4310    ; *** ART Parameters ***
4311    Draw = W3DLaserDraw ModuleTag_01
4312      Texture = EXBinaryStream32.tga
4313      NumBeams = 1                      ;Number of overlapping cylinders that make the beam. 1 beam will just use inner data. Current max: 10
4314      InnerBeamWidth = 4                ;The total width of beam
4315      InnerColor = R:0 G:255 B:0 A:180  ;The inside color of the laser (hot)
4316      Tile = Yes                        ;The height of the texture will determine how many times to tile the texture to fit without scaling.
4317      ScrollRate = -0.25                 ;Scrolls the texture offset this fast -- towards(-) away(+)
4318      Segments = 20                     ;Number of segments -- more segments give smoother curve (but more joints) Current max: 20
4319      ArcHeight = 30.0                  ;The height of the arc
4320      SegmentOverlapRatio = 0.0000      ;This value overlaps(+) or separates(-) the segments by ratio
4321      TilingScalar = 0.25                ;Stretches tiling if value > 1.0, otherwise shrinks it (1.0 is natural)
4322   End
4323  
4324    KindOf = IMMOBILE
4325    ClientUpdate = LaserUpdate ModuleTag_02
4326      ;nothing
4327    End
4328  End
4329  
4330  
4331  
4332  
4333  ;------------------------------------------------------------------------------
4334  Object ScorpionMissile
4335  
4336    ; *** ART Parameters ***
4337    Draw = W3DModelDraw ModuleTag_01
4338      OkToChangeModelColor = Yes
4339      DefaultConditionState
4340        Model = UVScorpion_m
4341      End
4342      ConditionState = JAMMED
4343        ParticleSysBone = None SparksMedium
4344      End
4345    End
4346  
4347    ; ***DESIGN parameters ***
4348    DisplayName      = OBJECT:Missile
4349    EditorSorting   = SYSTEM
4350    VisionRange = 0.0  
4351    ArmorSet
4352      Conditions      = None
4353      Armor           = ProjectileArmor
4354      DamageFX        = None
4355    End
4356  
4357    ; *** ENGINEERING Parameters ***
4358    KindOf = PROJECTILE SMALL_MISSILE
4359    Body = ActiveBody ModuleTag_02
4360      MaxHealth       = 100.0
4361      InitialHealth   = 100.0
4362  
4363      ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health.
4364      ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own.
4365      ; A projectile is not disabled, but instead loses target and scatters
4366      SubdualDamageCap = 200
4367      SubdualDamageHealRate = 100000
4368      SubdualDamageHealAmount = 50
4369    End
4370  
4371  ; ---- begin Projectile death behaviors
4372    Behavior = InstantDeathBehavior DeathModuleTag_01
4373      DeathTypes = NONE +DETONATED
4374      ; we detonated normally.
4375      ; no FX, just quiet destroy ourselves
4376    End
4377    Behavior = InstantDeathBehavior DeathModuleTag_02
4378      DeathTypes = NONE +LASERED
4379      ; shot down by laser.
4380      FX         = FX_GenericMissileDisintegrate
4381      OCL        = OCL_GenericMissileDisintegrate
4382    End
4383    Behavior = InstantDeathBehavior DeathModuleTag_03
4384      DeathTypes = ALL -LASERED -DETONATED
4385      ; shot down by nonlaser.
4386      FX         = FX_GenericMissileDeath
4387    End
4388  
4389    Behavior = FireWeaponWhenDeadBehavior ModuleTag_04
4390      DeathWeapon   = ToxinShellWeapon
4391      StartsActive  = No                      ; turned on by upgrade
4392      TriggeredBy   = Upgrade_GLAToxinShells          
4393      ConflictsWith = Upgrade_GLAAnthraxBeta Chem_Upgrade_GLAAnthraxGamma      
4394    End
4395  
4396    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
4397      DeathWeapon   = ToxinShellWeaponUpgraded
4398      StartsActive  = No                      ; turned on by upgrade
4399      TriggeredBy   = Upgrade_GLAAnthraxBeta   Upgrade_GLAToxinShells       
4400      RequiresAllTriggers = Yes ;TriggeredBy is an AND, not an OR like it normally is
4401      ConflictsWith = Chem_Upgrade_GLAAnthraxGamma
4402    End
4403  
4404    Behavior = FireWeaponWhenDeadBehavior ModuleTag99
4405      DeathWeapon   = Chem_ToxinShellWeaponGamma
4406      StartsActive  = No
4407      TriggeredBy   = Chem_Upgrade_GLAAnthraxGamma Upgrade_GLAToxinShells 
4408      RequiresAllTriggers = Yes; 
4409    End;
4410  
4411  ; ---- end Projectile death behaviors
4412      
4413    Behavior = PhysicsBehavior ModuleTag_06
4414      Mass = 1
4415    End
4416    Behavior = MissileAIUpdate ModuleTag_07
4417      TryToFollowTarget = Yes 
4418      FuelLifetime = 4000
4419      InitialVelocity = 150                ; in dist/sec
4420      IgnitionDelay = 0
4421      DistanceToTravelBeforeTurning = 30
4422      IgnitionFX = FX_JetMissileIgnition
4423    End
4424    Locomotor = SET_NORMAL ScorpionMissileLocomotor
4425  
4426  
4427    Behavior = WeaponBonusUpgrade ModuleTag_08
4428      TriggeredBy = Upgrade_GLAAPRockets
4429    End
4430  
4431    Geometry = Sphere
4432    GeometryIsSmall = Yes
4433    GeometryMajorRadius = 1.0
4434    
4435  
4436  End
4437  
4438  ;------------------------------------------------------------------------------
4439  Object RangerFlashBangGrenade
4440  
4441    ; *** ART Parameters ***
4442    Draw = W3DModelDraw ModuleTag_01
4443      OkToChangeModelColor = Yes
4444      ConditionState = NONE
4445        Model = NVMBuggy_m
4446      End
4447    End
4448  
4449    ; ***DESIGN parameters ***
4450    DisplayName      = OBJECT:FlashBangGrenade
4451    EditorSorting   = SYSTEM
4452    ArmorSet
4453      Armor = ProjectileArmor
4454    End
4455    VisionRange = 0.0  
4456  
4457    ; *** ENGINEERING Parameters ***
4458    KindOf = PROJECTILE
4459    Body = ActiveBody ModuleTag_02
4460      MaxHealth       = 100.0
4461      InitialHealth   = 100.0
4462    End
4463  
4464    Behavior = DestroyDie ModuleTag_03
4465      ;nothing
4466    End
4467      
4468    Behavior = PhysicsBehavior ModuleTag_04
4469      Mass = 1
4470    End
4471  
4472    Behavior = DumbProjectileBehavior ModuleTag_05
4473      ; To tweak a Bezier path, please see GS
4474      FirstHeight                     = 50  ; Height of Bezier control points above highest intervening terrain
4475      SecondHeight                    = 150
4476      FirstPercentIndent              = 30% ; Percentage of shot distance control points are placed
4477      SecondPercentIndent             = 70%
4478      GarrisonHitKillRequiredKindOf   = INFANTRY
4479      GarrisonHitKillForbiddenKindOf  = NONE
4480      GarrisonHitKillCount            = 10  ; ensure that a single grenade clears out all garrisoned buildings.
4481      GarrisonHitKillFX               = FX_FlashBangGarrisonBuildingHit
4482      FlightPathAdjustDistPerSecond   = 0 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4483    End
4484  
4485    Geometry = Sphere
4486    GeometryIsSmall = Yes
4487    GeometryMajorRadius = 1.0
4488  
4489  End
4490  
4491  ;------------------------------------------------------------------------------
4492  Object ScorpionTankShell
4493  
4494    ; *** ART Parameters ***
4495    Draw = W3DModelDraw ModuleTag_01
4496      ConditionState = NONE
4497        Model = AVTankShel
4498      End
4499    End
4500  
4501    ; ***DESIGN parameters ***
4502    DisplayName       = OBJECT:TankShell
4503    EditorSorting     = SYSTEM
4504    ArmorSet
4505      Armor = ProjectileArmor
4506    End
4507    VisionRange = 0.0
4508  
4509    ; *** ENGINEERING Parameters ***
4510    KindOf = PROJECTILE
4511    Body = ActiveBody ModuleTag_02
4512      MaxHealth       = 100.0
4513      InitialHealth   = 100.0
4514    End
4515  
4516    Behavior = DestroyDie ModuleTag_03
4517      ;nothing
4518    End
4519  
4520    Behavior = FireWeaponWhenDeadBehavior ModuleTag_04
4521      DeathWeapon   = ToxinShellWeapon
4522      StartsActive  = No                      ; turned on by upgrade
4523      TriggeredBy   = Upgrade_GLAToxinShells          
4524      ConflictsWith = Upgrade_GLAAnthraxBeta Chem_Upgrade_GLAAnthraxGamma      
4525    End
4526  
4527    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
4528      DeathWeapon   = ToxinShellWeaponUpgraded
4529      StartsActive  = No                      ; turned on by upgrade
4530      TriggeredBy   = Upgrade_GLAAnthraxBeta   Upgrade_GLAToxinShells       
4531      RequiresAllTriggers = Yes ;TriggeredBy is an AND, not an OR like it normally is
4532      ConflictsWith = Chem_Upgrade_GLAAnthraxGamma
4533    End
4534  
4535    Behavior = FireWeaponWhenDeadBehavior ModuleTag99
4536      DeathWeapon   = Chem_ToxinShellWeaponGamma
4537      StartsActive  = No
4538      TriggeredBy   = Chem_Upgrade_GLAAnthraxGamma Upgrade_GLAToxinShells 
4539      RequiresAllTriggers = Yes; 
4540    End;
4541  
4542    Behavior = DumbProjectileBehavior ModuleTag_06
4543      DetonateCallsKill = Yes
4544      ; To tweak a Bezier path, please see GS
4545      FirstHeight = 10  ; Height of Bezier control points above highest intervening terrain
4546      SecondHeight = 10
4547      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
4548      SecondPercentIndent = 90%
4549      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4550    End
4551  
4552    Behavior = PhysicsBehavior ModuleTag_07
4553      Mass = 0.01 ; can't be zero, but we want it tiny so that it travels nearly straight
4554    End
4555  
4556  ; The Toxin explosions don't want to double up on particles, so only play this effect if we don't have Toxin
4557    Behavior = FireWeaponWhenDeadBehavior ModuleTag_08
4558      DeathWeapon   = ScorpionTankGunFXWeapon
4559      StartsActive  = Yes
4560      ConflictsWith = Upgrade_GLAToxinShells      
4561    End
4562  
4563    Geometry = Sphere
4564    GeometryIsSmall = Yes
4565    GeometryMajorRadius = 1.0
4566  
4567  End
4568  
4569  ;------------------------------------------------------------------------------
4570  Object MarauderTankShell
4571  
4572    ; *** ART Parameters ***
4573    Draw = W3DModelDraw ModuleTag_01
4574      ConditionState = NONE
4575        Model = AVTankShel
4576      End
4577    End
4578  
4579    ; ***DESIGN parameters ***
4580    DisplayName       = OBJECT:TankShell
4581    EditorSorting     = SYSTEM
4582    ArmorSet
4583      Armor = ProjectileArmor
4584    End
4585    VisionRange = 0.0
4586  
4587    ; *** ENGINEERING Parameters ***
4588    KindOf = PROJECTILE
4589    Body = ActiveBody ModuleTag_02
4590      MaxHealth       = 100.0
4591      InitialHealth   = 100.0
4592    End
4593  
4594    Behavior = DestroyDie ModuleTag_03
4595      ;nothing
4596    End
4597  
4598    
4599    Behavior = FireWeaponWhenDeadBehavior ModuleTag99
4600      DeathWeapon   = Chem_ToxinShellWeaponGamma
4601      StartsActive  = No
4602      TriggeredBy   = Chem_Upgrade_GLAAnthraxGamma Upgrade_GLAToxinShells
4603      RequiresAllTriggers = Yes; 
4604    End;
4605  
4606    Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
4607      DeathWeapon   = ToxinShellWeaponUpgraded
4608      StartsActive  = No                      ; turned on by upgrade
4609      TriggeredBy   = Upgrade_GLAAnthraxBeta Upgrade_GLAToxinShells         
4610      RequiresAllTriggers = Yes ;TriggeredBy is an AND, not an OR like it normally is
4611      ConflictsWith = Chem_Upgrade_GLAAnthraxGamma
4612    End
4613  
4614    Behavior = FireWeaponWhenDeadBehavior ModuleTag_04
4615      DeathWeapon   = ToxinShellWeapon
4616      StartsActive  = No                      ; turned on by upgrade
4617      TriggeredBy   = Upgrade_GLAToxinShells          
4618      ConflictsWith = Upgrade_GLAAnthraxBeta Chem_Upgrade_GLAAnthraxGamma 
4619    End
4620  
4621    Behavior = DumbProjectileBehavior ModuleTag_06
4622      DetonateCallsKill = Yes
4623      ; To tweak a Bezier path, please see GS
4624      FirstHeight = 10  ; Height of Bezier control points above highest intervening terrain
4625      SecondHeight = 10
4626      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
4627      SecondPercentIndent = 90%
4628      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4629    End
4630  
4631   Behavior = PhysicsBehavior ModuleTag_07
4632      Mass = 0.01 ; can't be zero, but we want it tiny so that it travels nearly straight
4633    End
4634  
4635    Geometry = Sphere
4636    GeometryIsSmall = Yes
4637    GeometryMajorRadius = 1.0
4638  
4639  End
4640  
4641  ;------------------------------------------------------------------------------
4642  Object GenericTankShell
4643  
4644    ; *** ART Parameters ***
4645    Draw = W3DModelDraw ModuleTag_01
4646      ConditionState = NONE
4647        Model = AVTankShel
4648      End
4649    End
4650  
4651    ; ***DESIGN parameters ***
4652    DisplayName       = OBJECT:TankShell
4653    EditorSorting     = SYSTEM
4654    ArmorSet
4655      Armor = ProjectileArmor
4656    End
4657    VisionRange = 0.0  
4658  
4659    ; *** ENGINEERING Parameters ***
4660    KindOf = PROJECTILE
4661    Body = ActiveBody ModuleTag_02
4662      MaxHealth       = 100.0
4663      InitialHealth   = 100.0
4664    End
4665  
4666    Behavior = DestroyDie ModuleTag_03
4667      ;nothing
4668    End
4669      
4670    Behavior = DumbProjectileBehavior ModuleTag_04
4671      ; To tweak a Bezier path, please see GS
4672      FirstHeight = 10  ; Height of Bezier control points above highest intervening terrain
4673      SecondHeight = 10
4674      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
4675      SecondPercentIndent = 90%
4676      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4677    End
4678  
4679    Behavior = PhysicsBehavior ModuleTag_05
4680      Mass = 0.01   ; we can't have a zero mass, but we want it pretty tiny...
4681    End
4682  
4683    Geometry = Sphere
4684    GeometryIsSmall = Yes
4685    GeometryMajorRadius = 1.0
4686  
4687  End
4688  
4689  ;------------------------------------------------------------------------------
4690  Object BattleMasterTankShell
4691  
4692    ; *** ART Parameters ***
4693    Draw = W3DModelDraw ModuleTag_01
4694      ConditionState = NONE
4695        Model = AVTankShel
4696      End
4697    End
4698  
4699    ; ***DESIGN parameters ***
4700    DisplayName       = OBJECT:TankShell
4701    EditorSorting     = SYSTEM
4702    ArmorSet
4703      Armor = ProjectileArmor
4704    End
4705    VisionRange = 0.0  
4706  
4707    ; *** ENGINEERING Parameters ***
4708    KindOf = PROJECTILE
4709    Body = ActiveBody ModuleTag_02
4710      MaxHealth       = 100.0
4711      InitialHealth   = 100.0
4712    End
4713  
4714    Behavior = DestroyDie ModuleTag_03
4715      ;nothing
4716    End
4717      
4718    Behavior = DumbProjectileBehavior ModuleTag_04
4719      ; To tweak a Bezier path, please see GS
4720      FirstHeight = 10  ; Height of Bezier control points above highest intervening terrain
4721      SecondHeight = 10
4722      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
4723      SecondPercentIndent = 90%
4724      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4725    End
4726  
4727    Behavior = PhysicsBehavior ModuleTag_05
4728      Mass = 0.01   ; we can't have a zero mass, but we want it pretty tiny...
4729    End
4730  
4731    Behavior = WeaponBonusUpgrade ModuleTag_06 
4732      TriggeredBy = Upgrade_ChinaUraniumShells
4733    End
4734  
4735    Geometry = Sphere
4736    GeometryIsSmall = Yes
4737    GeometryMajorRadius = 1.0
4738  
4739  End
4740  
4741  ;------------------------------------------------------------------------------
4742  Object OverlordTankShell
4743  
4744    ; *** ART Parameters ***
4745    Draw = W3DModelDraw ModuleTag_01
4746      ConditionState = NONE
4747        Model = AVTankShel
4748      End
4749    End
4750  
4751    ; ***DESIGN parameters ***
4752    DisplayName       = OBJECT:TankShell
4753    EditorSorting     = SYSTEM
4754    ArmorSet
4755      Armor = ProjectileArmor
4756    End
4757    VisionRange = 0.0  
4758  
4759    ; *** ENGINEERING Parameters ***
4760    KindOf = PROJECTILE
4761    Body = ActiveBody ModuleTag_02
4762      MaxHealth       = 100.0
4763      InitialHealth   = 100.0
4764    End
4765  
4766    Behavior = DestroyDie ModuleTag_03
4767      ;nothing
4768    End
4769      
4770    Behavior = DumbProjectileBehavior ModuleTag_04
4771      ; To tweak a Bezier path, please see GS
4772      FirstHeight = 10  ; Height of Bezier control points above highest intervening terrain
4773      SecondHeight = 10
4774      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
4775      SecondPercentIndent = 90%
4776      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4777    End
4778  
4779    Behavior = PhysicsBehavior ModuleTag_05
4780      Mass = 0.01   ; we can't have a zero mass, but we want it pretty tiny...
4781    End
4782  
4783    Behavior = WeaponBonusUpgrade ModuleTag_06 
4784      TriggeredBy = Upgrade_ChinaUraniumShells
4785    End
4786  
4787    Geometry = Sphere
4788    GeometryIsSmall = Yes
4789    GeometryMajorRadius = 1.0
4790  
4791  End
4792  
4793  
4794  
4795  
4796  ;------------------------------------------------------------------------------
4797  Object NukeCannonShell
4798  
4799    ; *** ART Parameters ***
4800    Draw = W3DModelDraw ModuleTag_01
4801      ConditionState = NONE
4802        Model = AVTankShel
4803      End
4804    End
4805  
4806    ; ***DESIGN parameters ***
4807    DisplayName       = OBJECT:TankShell
4808    EditorSorting     = SYSTEM
4809    ArmorSet
4810      Armor = ProjectileArmor
4811    End
4812    VisionRange = 0.0  
4813  
4814  
4815    ; *** AUDIO Parameters ***
4816    SoundAmbient = NukeCannonIncomingWhistle
4817  
4818    ; *** ENGINEERING Parameters ***
4819    KindOf = PROJECTILE
4820    Body = ActiveBody ModuleTag_02
4821      MaxHealth       = 100.0
4822      InitialHealth   = 100.0
4823    End
4824  
4825    Behavior = DestroyDie ModuleTag_03
4826      ;nothing
4827    End
4828      
4829    Behavior = DumbProjectileBehavior ModuleTag_04
4830      ; To tweak a Bezier path, please see GS
4831      FirstHeight = 50  ; Height of Bezier control points above highest intervening terrain
4832      SecondHeight = 150
4833      FirstPercentIndent = 30% ; Percentage of shot distance control points are placed
4834      SecondPercentIndent = 70%
4835      FlightPathAdjustDistPerSecond   = 0 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4836    End
4837  
4838    Behavior = PhysicsBehavior ModuleTag_05
4839      Mass = 0.01   ; we can't have a zero mass, but we want it pretty tiny...
4840    End
4841  
4842    Geometry = Sphere
4843    GeometryIsSmall = Yes
4844    GeometryMajorRadius = 1.0
4845  
4846  End
4847  
4848  ;------------------------------------------------------------------------------
4849  Object NeutronCannonShell
4850  
4851    ; *** ART Parameters ***
4852    Draw = W3DModelDraw ModuleTag_01
4853      ConditionState = NONE
4854        Model = AVTankShel
4855      End
4856    End
4857  
4858    ; ***DESIGN parameters ***
4859    DisplayName       = OBJECT:TankShell
4860    EditorSorting     = SYSTEM
4861    ArmorSet
4862      Armor = ProjectileArmor
4863    End
4864    VisionRange = 0.0  
4865  
4866  
4867    ; *** AUDIO Parameters ***
4868    SoundAmbient = NukeCannonIncomingWhistle
4869  
4870    ; *** ENGINEERING Parameters ***
4871    KindOf = PROJECTILE
4872    Body = ActiveBody ModuleTag_02
4873      MaxHealth       = 100.0
4874      InitialHealth   = 100.0
4875    End
4876  
4877    Behavior = DestroyDie ModuleTag_03
4878      ;nothing
4879    End
4880      
4881    Behavior = DumbProjectileBehavior ModuleTag_04
4882      ; To tweak a Bezier path, please see GS
4883      FirstHeight = 50  ; Height of Bezier control points above highest intervening terrain
4884      SecondHeight = 150
4885      FirstPercentIndent = 30% ; Percentage of shot distance control points are placed
4886      SecondPercentIndent = 70%
4887      FlightPathAdjustDistPerSecond   = 0 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4888      DetonateCallsKill = Yes
4889    End
4890  
4891    Behavior = PhysicsBehavior ModuleTag_05
4892      Mass = 0.01   ; we can't have a zero mass, but we want it pretty tiny...
4893    End
4894  
4895    Behavior = NeutronBlastBehavior ModuleTag_06
4896      BlastRadius = 70
4897      AffectAirborne = No
4898    End
4899  
4900    Geometry = Sphere
4901    GeometryIsSmall = Yes
4902    GeometryMajorRadius = 1.0
4903  
4904  End
4905  
4906  ;------------------------------------------------------------------------------
4907  Object InfernoTankShell
4908  
4909    ; *** ART Parameters ***
4910    Draw = W3DModelDraw ModuleTag_01
4911      ConditionState        = NONE
4912        Model               = AVTankShel
4913        ParticleSysBone     = None InfernoTrail
4914      End
4915    End
4916  
4917    ; *** AUDIO Parameters ***
4918    SoundAmbient = InfernoCannonIncomingWhistle
4919  
4920    ; ***DESIGN parameters ***
4921    DisplayName       = OBJECT:TankShell
4922    EditorSorting     = SYSTEM
4923    ArmorSet
4924      Armor = ProjectileArmor
4925    End
4926    VisionRange = 0.0  
4927  
4928    ; *** ENGINEERING Parameters ***
4929    KindOf = PROJECTILE
4930    Body = ActiveBody ModuleTag_02
4931      MaxHealth       = 100.0
4932      InitialHealth   = 100.0
4933    End
4934  
4935    Behavior = DestroyDie ModuleTag_03
4936      ;nothing
4937    End
4938      
4939    Behavior = DumbProjectileBehavior ModuleTag_09
4940      DetonateCallsKill = Yes
4941      ; To tweak a Bezier path, please see GS
4942      FirstHeight = 50  ; Height of Bezier control points above highest intervening terrain
4943      SecondHeight = 150
4944      FirstPercentIndent = 20% ; Percentage of shot distance control points are placed
4945      SecondPercentIndent = 90%
4946      FlightPathAdjustDistPerSecond   = 0 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
4947    End
4948  
4949    Behavior = PhysicsBehavior ModuleTag_05
4950      Mass = 10
4951    End
4952  
4953    Behavior = HeightDieUpdate ModuleTag_06
4954      TargetHeight = 1.0
4955      TargetHeightIncludesStructures = Yes
4956      OnlyWhenMovingDown = Yes
4957      InitialDelay                    = 1000 ; Can't explode in the first second so we don't explode on the pad
4958    End
4959  
4960    Behavior = FireWeaponWhenDeadBehavior ModuleTag_07
4961      DeathWeapon   = SmallFireFieldCreationWeapon
4962      StartsActive  = Yes
4963    End
4964  
4965    Geometry = Sphere
4966    GeometryIsSmall = Yes
4967    GeometryMajorRadius = 1.0
4968  
4969  End
4970  
4971  
4972  ;------------------------------------------------------------------------------
4973  Object InfernoTankShellUpgraded
4974  
4975    ; *** ART Parameters ***
4976    Draw = W3DModelDraw ModuleTag_01
4977      ConditionState        = NONE
4978        Model               = AVTankShel
4979        ParticleSysBone     = None InfernoTrailUpgraded
4980      End
4981    End
4982  
4983    ; *** AUDIO Parameters ***
4984    SoundAmbient = InfernoCannonIncomingWhistle
4985  
4986    ; ***DESIGN parameters ***
4987    DisplayName       = OBJECT:TankShell
4988    EditorSorting     = SYSTEM
4989    ArmorSet
4990      Armor = ProjectileArmor
4991    End
4992    VisionRange = 0.0  
4993  
4994    ; *** ENGINEERING Parameters ***
4995    KindOf = PROJECTILE
4996    Body = ActiveBody ModuleTag_02
4997      MaxHealth       = 100.0
4998      InitialHealth   = 100.0
4999    End
5000  
5001    Behavior = DestroyDie ModuleTag_03
5002      ;nothing
5003    End
5004      
5005    Behavior = DumbProjectileBehavior ModuleTag_09
5006      DetonateCallsKill = Yes
5007      ; To tweak a Bezier path, please see GS
5008      FirstHeight = 50  ; Height of Bezier control points above highest intervening terrain
5009      SecondHeight = 150
5010      FirstPercentIndent = 20% ; Percentage of shot distance control points are placed
5011      SecondPercentIndent = 90%
5012      FlightPathAdjustDistPerSecond   = 0 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
5013    End
5014  
5015    Behavior = PhysicsBehavior ModuleTag_05
5016      Mass = 10
5017    End
5018  
5019    Behavior = HeightDieUpdate ModuleTag_06
5020      TargetHeight = 1.0
5021      TargetHeightIncludesStructures = Yes
5022      OnlyWhenMovingDown = Yes
5023      InitialDelay                    = 1000 ; Can't explode in the first second so we don't explode on the pad
5024    End
5025  
5026    Behavior = FireWeaponWhenDeadBehavior ModuleTag_08
5027      DeathWeapon   = SmallFireFieldUpgradedCreationWeapon
5028      StartsActive  = Yes
5029    End
5030  
5031   
5032    Geometry = Sphere
5033    GeometryIsSmall = Yes
5034    GeometryMajorRadius = 1.0
5035  
5036  End
5037  
5038  
5039  
5040  ;------------------------------------------------------------------------------
5041  Object GLAAngryMobRockProjectileObject
5042  
5043    ; *** ART Parameters ***
5044  
5045    Draw = W3DModelDraw ModuleTag_01
5046      ConditionState = NONE
5047        Model = Mob_Rock
5048      End
5049    End
5050  
5051    ; ***DESIGN parameters ***
5052    DisplayName       = OBJECT:GLARock
5053    EditorSorting     = SYSTEM
5054    ArmorSet
5055      Armor = ProjectileArmor
5056    End
5057    VisionRange = 0.0
5058  
5059    ; *** ENGINEERING Parameters ***
5060    KindOf = PROJECTILE
5061    Body = ActiveBody ModuleTag_02
5062      MaxHealth       = 100.0
5063      InitialHealth   = 100.0
5064    End
5065  
5066    Behavior = DestroyDie ModuleTag_03
5067      ;nothing
5068    End
5069  
5070    Behavior = DumbProjectileBehavior ModuleTag_04
5071      TumbleRandomly = Yes    ; not implemented, alas
5072      DetonateCallsKill = Yes
5073      ; To tweak a Bezier path, please see GS
5074      FirstHeight = 10  ; Height of Bezier control points above highest intervening terrain
5075      SecondHeight = 10
5076      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
5077      SecondPercentIndent = 90%
5078      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
5079    End
5080  
5081   Behavior = PhysicsBehavior ModuleTag_05;lorenzen sez, please keep this, it allows tumbling
5082      Mass = 0.1 ; about the weight of a rock
5083    End
5084  
5085    Geometry = Sphere
5086    GeometryIsSmall = Yes
5087    GeometryMajorRadius = 1.0
5088  
5089  End
5090  
5091  
5092  ;------------------------------------------------------------------------------
5093  Object GLAAngryMobMolotovCocktailProjectileObject
5094  
5095    ; *** ART Parameters ***
5096    Draw = W3DModelDraw ModuleTag_01
5097      ConditionState = NONE
5098        Model = Mob_Botl
5099        ParticleSysBone = BONE_FX MolotovBurningRag
5100      End
5101    End
5102  
5103    ; ***DESIGN parameters ***
5104    DisplayName       = OBJECT:GLARock
5105    EditorSorting     = SYSTEM
5106    ArmorSet
5107      Armor = ProjectileArmor
5108    End
5109    VisionRange = 0.0
5110  
5111    ; *** ENGINEERING Parameters ***
5112    KindOf = PROJECTILE
5113    Body = ActiveBody ModuleTag_02
5114      MaxHealth       = 100.0
5115      InitialHealth   = 100.0
5116    End
5117  
5118  
5119    Behavior = DumbProjectileBehavior ModuleTag_03
5120      TumbleRandomly = Yes ; not implemented, alas
5121      DetonateCallsKill = Yes
5122      ; To tweak a Bezier path, please see GS
5123      FirstHeight = 30  //TALL ARC LOOK GOOD
5124      SecondHeight = 30 //TALL ARC LOOK GOOD
5125      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
5126      SecondPercentIndent = 90%
5127      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
5128    End
5129  
5130    Behavior = PhysicsBehavior ModuleTag_04;lorenzen sez, please keep this, it allows tumbling
5131      Mass = 0.1 ; about the weight of a rock
5132    End
5133  
5134  ;  Behavior = FireWeaponWhenDeadBehavior
5135  ;    DeathWeapon   = GLAAngryMobMolotovCocktailPersistentFlameWeapon
5136  ;    StartsActive  = Yes 
5137  ;  End
5138  
5139    Behavior = DestroyDie ModuleTag_05
5140      ;nothing
5141    End
5142  
5143  
5144    Geometry = Sphere
5145    GeometryIsSmall = Yes
5146    GeometryMajorRadius = 1.0
5147  
5148  End
5149  
5150  
5151  
5152  ;------------------------------------------------------------------------------
5153  Object ChinaArtilleryBarrageShell
5154  
5155    ; *** ART Parameters ***
5156    Draw = W3DModelDraw ModuleTag_01
5157      OkToChangeModelColor = Yes
5158      ConditionState = NONE
5159        Model = AVTankShel
5160        ParticleSysBone = NONE ArtilleryBarrageTrail
5161        ParticleSysBone = NONE ArtilleryBarrageTrailRing
5162      End
5163    End
5164  
5165    ; ***DESIGN parameters ***
5166    DisplayName      = OBJECT:Missile
5167    Side = China
5168    EditorSorting   = SYSTEM
5169    TransportSlotCount = 1                 ;how many "slots" we take in a transport (0 == not transportable)
5170    VisionRange = 0.0  
5171    ArmorSet
5172      Conditions      = None
5173      Armor           = ProjectileArmor
5174      DamageFX        = None
5175    End
5176  
5177  
5178    ; *** AUDIO Parameters ***
5179    SoundAmbient = ArtilleryBarrageIncomingWhistle
5180  
5181  
5182    ; *** ENGINEERING Parameters ***
5183    KindOf            = PRELOAD CAN_CAST_REFLECTIONS PROJECTILE ;SMALL_MISSILE
5184    Body = ActiveBody ModuleTag_02
5185      MaxHealth       = 100.0
5186      InitialHealth   = 100.0
5187    End
5188  
5189  ; ---- begin Projectile death behaviors
5190    Behavior = InstantDeathBehavior DeathModuleTag_01
5191      DeathTypes = NONE +DETONATED
5192      ; we detonated normally.  No effect, since it is in weapon.  Don't want to double.
5193      ; FX        = FX_ArtilleryBarrage
5194    End
5195    Behavior = InstantDeathBehavior DeathModuleTag_02
5196      DeathTypes = NONE +LASERED
5197      ; shot down by laser.
5198      FX         = FX_GenericMissileDisintegrate
5199      OCL        = OCL_GenericMissileDisintegrate
5200    End
5201    Behavior = InstantDeathBehavior DeathModuleTag_03
5202      DeathTypes = ALL -LASERED -DETONATED
5203      ; shot down by nonlaser.
5204      FX         = FX_GenericMissileDeath
5205    End
5206  ; ---- end Projectile death behaviors
5207  
5208  ; Besides being the wrong weapon, the weapon is fired from the DeliverPayload listing in OCL.ini
5209  ;  Behavior = FireWeaponWhenDeadBehavior ModuleTag_05
5210  ;    DeathWeapon   = A10ThunderboltMissileWeapon
5211  ;    StartsActive  = Yes
5212  ;  End
5213  
5214    Behavior = PhysicsBehavior ModuleTag_08
5215      Mass = 1
5216    End
5217    Behavior = MissileAIUpdate ModuleTag_09
5218      TryToFollowTarget = Yes 
5219      FuelLifetime = 10000
5220      InitialVelocity = 30                ; in dist/sec
5221      IgnitionDelay = 0
5222    End
5223    ; It's a missile, it needs to hit so it can +DETONATED
5224  ;  Behavior = HeightDieUpdate ModuleTag_10
5225  ;    TargetHeight = 1.0
5226  ;    TargetHeightIncludesStructures = No
5227  ;  End
5228    Locomotor = SET_NORMAL A10ThunderboltMissileLocomotor
5229  
5230    Geometry = Sphere
5231    GeometryIsSmall = Yes
5232    GeometryMajorRadius = 1.0
5233  
5234    Behavior = SpecialPowerCompletionDie ModuleTag_11
5235      SpecialPowerTemplate = SuperweaponA10ThunderboltMissileStrike
5236    End
5237  
5238  
5239  End
5240  
5241  
5242  
5243  
5244  
5245  ;--------------------------------------------------------------------------------------------------------
5246  ;------------------------------------------------------------------------------
5247  Object NapalmBomb
5248  
5249    ; *** ART Parameters ***
5250    Draw = W3DModelDraw ModuleTag_01
5251      OkToChangeModelColor = Yes
5252      DefaultConditionState
5253        Model = AVBomber_B
5254      End
5255    End
5256  
5257    ; ***DESIGN parameters ***
5258    DisplayName         = OBJECT:Missile
5259    EditorSorting       = SYSTEM
5260    VisionRange         = 0.0  ; Projectiles can't see, but superweapons *may need to*
5261    TransportSlotCount  = 1    ; since Napalm Strike carries us as payload, not weapon
5262    ArmorSet
5263      Conditions      = None
5264      Armor           = ProjectileArmor
5265      DamageFX        = None
5266    End
5267  
5268    ; *** ENGINEERING Parameters ***
5269    KindOf = PRELOAD NO_COLLIDE UNATTACKABLE;  
5270    Body = ActiveBody ModuleTag_02
5271      MaxHealth       = 100.0
5272      InitialHealth   = 100.0
5273    End
5274  
5275  ; ---- begin Projectile death behaviors
5276    Behavior = InstantDeathBehavior DeathModuleTag_01
5277      DeathTypes = NONE +DETONATED
5278      ; we detonated normally.
5279      ; no FX, just quiet destroy ourselves
5280    End
5281    Behavior = InstantDeathBehavior DeathModuleTag_02
5282      DeathTypes = NONE +LASERED
5283      ; shot down by laser.
5284      FX         = FX_GenericMissileDisintegrate
5285      OCL        = OCL_GenericMissileDisintegrate
5286    End
5287    Behavior = InstantDeathBehavior DeathModuleTag_03
5288      DeathTypes = ALL -LASERED -DETONATED
5289      ; shot down by nonlaser.
5290      FX         = FX_GenericMissileDeath
5291    End
5292  ; ---- end Projectile death behaviors
5293  
5294    Behavior = PhysicsBehavior ModuleTag_06
5295      Mass                = 75.0
5296      AerodynamicFriction = 0.1  ; this is now friction-per-sec
5297      ForwardFriction     = 0.1  ; this is now friction-per-sec
5298      CenterOfMassOffset  = 0.13  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
5299    End
5300  
5301  ; Commenting out module 9 since this method can't take Black napalm
5302  ;  Behavior            = CreateObjectDie  ModuleTag_09
5303  ;    DeathTypes = ALL
5304  ;    CreationList      = OCL_NapalmBombDetonation
5305  ;  End
5306  
5307    Behavior = HeightDieUpdate ModuleTag_10
5308      TargetHeight = 1.0
5309      TargetHeightIncludesStructures = No
5310    End
5311  
5312    Behavior = FireWeaponWhenDeadBehavior ModuleTag_11
5313      DeathWeapon   = NapalmBombWeapon
5314      StartsActive  = Yes  
5315      ConflictsWith  = Upgrade_ChinaBlackNapalm
5316    End
5317  
5318    Behavior = FireWeaponWhenDeadBehavior ModuleTag_12
5319      DeathWeapon   = BlackNapalmBombWeapon
5320      StartsActive  = No
5321      TriggeredBy   = Upgrade_ChinaBlackNapalm     
5322    End
5323  
5324    Geometry = Sphere
5325    GeometryIsSmall = Yes
5326    GeometryMajorRadius = 1.0
5327    Scale = 0.7
5328  
5329  End
5330  
5331  ;---------------------------------------------------------------------------------------
5332  Object LeafletContainer
5333  
5334    ; ***ART parameters ***
5335  
5336    ; ***DESIGN parameters ***
5337    DisplayName         = OBJECT:DaisyCutterBomb
5338    EditorSorting       = SYSTEM
5339    TransportSlotCount  = 10                 ;how many "slots" we take in a transport (0 == not transportable)
5340    VisionRange         = 300.0  
5341    ShroudClearingRange = 0
5342    ArmorSet
5343      Conditions      = None
5344      Armor           = ProjectileArmor
5345      DamageFX        = None
5346    End
5347  
5348    ; *** AUDIO Parameters ***
5349    SoundFallingFromPlane = LeafletDrop
5350    
5351    ; *** ENGINEERING Parameters ***
5352    KindOf            = PROJECTILE
5353    Body = ActiveBody ModuleTag_02
5354      MaxHealth       = 100.0
5355      InitialHealth   = 100.0
5356    End
5357  
5358    Behavior = DestroyDie ModuleTag_05
5359      ;nothing
5360    End
5361       
5362  
5363  
5364  
5365  
5366    Behavior = AIUpdateInterface ModuleTag_06
5367    End
5368    Locomotor = SET_NORMAL None
5369    Behavior = PhysicsBehavior ModuleTag_07
5370      Mass                = 75.0
5371      AerodynamicFriction = 1  ; this is now friction-per-sec
5372      ForwardFriction     = 22     ; this is now friction-per-sec
5373      CenterOfMassOffset  = 2  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
5374    End
5375    Behavior = HeightDieUpdate ModuleTag_08
5376      TargetHeight = 5.0
5377      TargetHeightIncludesStructures = No
5378    End
5379    
5380    Behavior = SpecialPowerCompletionDie ModuleTag_09
5381      SpecialPowerTemplate = SuperweaponLeafletDrop
5382    End
5383  
5384    Behavior = LeafletDropBehavior ModuleTag_11
5385      DisabledDuration    = 20000
5386      Delay               = 2500
5387      AffectRadius        = 110.0
5388      LeafletFXParticleSystem = LeafletParticles1
5389    End
5390  
5391    Geometry = Sphere
5392    GeometryIsSmall = No
5393    GeometryMajorRadius = 30.0
5394  
5395  End
5396  
5397  
5398  
5399  
5400  
5401  
5402  
5403  
5404  
5405  
5406  
5407  
5408  
5409  
5410  
5411  
5412  ;------------------------------------------------------------------------------
5413  Object CruiseMissile
5414  
5415    ; *** ART Parameters ***
5416    Draw               = W3DModelDraw ModuleTag_01
5417      OkToChangeModelColor = Yes
5418      ConditionState   = NONE
5419        Model          = NBNRocket
5420      End
5421      ConditionState   = DAMAGED REALLYDAMAGED RUBBLE
5422        Model          = NONE
5423      End
5424      
5425    End
5426  
5427    ; ***DESIGN parameters ***
5428    DisplayName        = OBJECT:CruiseMissile
5429    KindOf             = UNATTACKABLE
5430    EditorSorting      = SYSTEM
5431    VisionRange = 300.0  
5432    ShroudClearingRange = 0
5433    TransportSlotCount = 10
5434    ArmorSet
5435      Conditions       = None
5436      Armor            = ProjectileArmor
5437      DamageFX         = None
5438    End
5439  
5440    ; *** AUDIO Parameters ***
5441    ; SoundFallingFromPlane = DaisyCutterWeapon
5442      
5443    ; *** ENGINEERING Parameters ***
5444    Body = ActiveBody ModuleTag_02
5445      MaxHealth        = 99999999.0
5446      InitialHealth    = 99999999.0
5447    End
5448  
5449    Behavior = NeutronMissileUpdate ModuleTag_03
5450      DistanceToTravelBeforeTurning = 200       ; goes straight up a long ways first
5451      MaxTurnRate = 7200                        ; huge, since it turns off-camera
5452      ForwardDamping = 0.1
5453      RelativeSpeed = 2.0
5454      LaunchFX = FX_NeutronMissileLaunch
5455      IgnitionFX = FX_NeutronMissileIgnition
5456      TargetFromDirectlyAbove = 10      ; aim for an intermed spot directly above the target, so we come straight down onto it
5457      SpecialAccelFactor = 1
5458      SpecialSpeedTime = 1500
5459      SpecialSpeedHeight = 160
5460      SpecialJitterDistance = 0.4
5461      DeliveryDecalRadius = 210
5462      DeliveryDecal
5463        Texture           = SCCNuclearMissile_China
5464        Style             = SHADOW_ALPHA_DECAL
5465        OpacityMin        = 25%
5466        OpacityMax        = 50%
5467        OpacityThrobTime  = 500
5468        Color             = R:0 G:0 B:255 A:255 
5469        OnlyVisibleToOwningPlayer = Yes
5470      End
5471    End
5472  
5473    Behavior = HeightDieUpdate ModuleTag_04
5474      TargetHeight        = 10.0
5475      TargetHeightIncludesStructures = No
5476      OnlyWhenMovingDown  = Yes
5477      SnapToGroundOnDeath = Yes
5478      InitialDelay                    = 1000 ; Can't explode in the first second so we don't explode on the pad
5479    End
5480  
5481    Behavior = SpecialPowerCompletionDie ModuleTag_05
5482      SpecialPowerTemplate = SupW_CruiseMissile
5483    End
5484  
5485    Behavior = FireWeaponWhenDeadBehavior ModuleTag_09
5486  ;   DeathWeapon   = ScudStormDamageWeapon
5487      DeathWeapon   = MOABDetonationWeapon
5488      StartsActive  = Yes                      ; turned on by upgrade
5489    End
5490  
5491  ;  Behavior = NeutronMissileSlowDeathBehavior ModuleTag_06
5492  ;    DestructionDelay    = 1001
5493  ;    ScorchMarkSize      = 320
5494  ;    FXList              = FX_Nuke
5495  ;    
5496  ;    Blast1Enabled       = Yes
5497  ;    Blast1Delay         = 80     ;in milliseconds
5498  ;    Blast1ScorchDelay   = 100     ;in milliseconds
5499  ;    Blast1InnerRadius   = 60.0    ;objects inside this get the full damage
5500  ;    Blast1OuterRadius   = 60.0    ;objects inside this get some of the full damage
5501  ;    Blast1MaxDamage     = 0.0     ;damage within inner radius of blast
5502  ;    Blast1MinDamage     = 0.0     ;always do at least this much damage to objects
5503  ;    Blast1ToppleSpeed   = 0.5     ;higher #'s topple faster
5504  ;    Blast1PushForce     = 10.0    ;higher #'s push more
5505  ;    
5506  ;    Blast2Enabled       = Yes
5507  ;    Blast2Delay         = 160    ;in milliseconds
5508  ;    Blast2ScorchDelay   = 180     ;in milliseconds
5509  ;    Blast2InnerRadius   = 90.0    ;objects inside this get the full damage
5510  ;    Blast2OuterRadius   = 90.0    ;objects inside this get some of the full damage
5511  ;    Blast2MaxDamage     = 0.0     ;damage within inner radius of blast
5512  ;    Blast2MinDamage     = 0.0     ;always do at least this much damage to objects
5513  ;    Blast2ToppleSpeed   = 0.45    ;higher #'s topple faster
5514  ;    Blast2PushForce     = 8.0     ;higher #'s push more
5515  ;    
5516  ;    Blast3Enabled       = Yes
5517  ;    Blast3Delay         = 220    ;in milliseconds
5518  ;    Blast3ScorchDelay   = 260     ;in milliseconds
5519  ;    Blast3InnerRadius   = 120.0   ;objects inside this get the full damage
5520  ;    Blast3OuterRadius   = 120.0   ;objects inside this get some of the full damage
5521  ;    Blast3MaxDamage     = 0.0     ;damage within inner radius of blast
5522  ;    Blast3MinDamage     = 0.0     ;always do at least this much damage to objects
5523  ;    Blast3ToppleSpeed   = 0.42    ;higher #'s topple faster
5524  ;    Blast3PushForce     = 6.0     ;higher #'s push more;;;
5525  
5526  ;    Blast4Enabled       = Yes
5527  ;    Blast4Delay         = 350    ;in milliseconds
5528  ;    Blast4ScorchDelay   = 340     ;in milliseconds
5529  ;    Blast4InnerRadius   = 150.0   ;objects inside this get the full damage
5530  ;    Blast4OuterRadius   = 150.0   ;objects inside this get some of the full damage
5531  ;    Blast4MaxDamage     = 0.0     ;damage within inner radius of blast
5532  ;    Blast4MinDamage     = 0.0     ;always do at least this much damage to objects
5533  ;    Blast4ToppleSpeed   = 0.40    ;higher #'s topple faster
5534  ;    Blast4PushForce     = 6.0     ;higher #'s push more;;
5535  
5536  ;    Blast5Enabled       = Yes
5537  ;    Blast5Delay         = 500    ;in milliseconds
5538  ;    Blast5ScorchDelay   = 420     ;in milliseconds
5539  ;    Blast5InnerRadius   = 180.0   ;objects inside this get the full damage
5540  ;    Blast5OuterRadius   = 180.0   ;objects inside this get some of the full damage
5541  ;    Blast5MaxDamage     = 0.0     ;damage within inner radius of blast
5542  ;    Blast5MinDamage     = 0.0     ;always do at least this much damage to objects
5543  ;    Blast5ToppleSpeed   = 0.38    ;higher #'s topple faster
5544  ;    Blast5PushForce     = 6.0     ;higher #'s push more
5545  ;    
5546  ;    Blast6Enabled       = Yes
5547  ;    Blast6Delay         = 680    ;in milliseconds
5548  ;    Blast6ScorchDelay   = 500     ;in milliseconds
5549  ;    Blast6InnerRadius   = 60.0    ;objects inside this get the full damage
5550  ;    Blast6OuterRadius   = 210.0   ;objects inside this get some of the full damage
5551  ;    Blast6MaxDamage     = 1500.0  ;damage within inner radius of blast
5552  ;    Blast6MinDamage     = 150.0   ;always do at least this much damage to objects
5553  ;    Blast6ToppleSpeed   = 0.35    ;higher #'s topple faster
5554  ;    Blast6PushForce     = 4.0     ;higher #'s push more;;;
5555  
5556  ;    Blast7Enabled       = No
5557  ;    Blast7Delay         = 999999  ;in milliseconds, don't do the damage wave
5558  ;    Blast7ScorchDelay   = 620     ;in milliseconds
5559  ;    Blast7OuterRadius   = 210.0   ;objects inside this get some of the full damage;;
5560  
5561  ;    Blast8Enabled       = No
5562  ;    Blast8Delay         = 999999  ;in milliseconds, don't do the damage wave    
5563  ;    Blast8ScorchDelay   = 700     ;in milliseconds
5564  ;    Blast8OuterRadius   = 210.0   ;objects inside this get some of the full damage;
5565  
5566  ;    Blast9Enabled       = No
5567  ;    Blast9Delay         = 999999  ;in milliseconds, don't do the damage wave    
5568  ;    Blast9ScorchDelay   = 800     ;in milliseconds
5569  ;    Blast9OuterRadius   = 210.0   ;objects inside this get some of the full damage
5570  ;    
5571  ;    OCL            = MIDPOINT   OCL_NukeRadiationField
5572  ;  End
5573  
5574    Geometry = CYLINDER
5575    GeometryIsSmall = Yes
5576    GeometryMajorRadius = 7.0
5577    GeometryHeight = 60.0
5578  
5579  End
5580  
5581  
5582  
5583  
5584  
5585  
5586  
5587  
5588  
5589  
5590  
5591  
5592  
5593  
5594  
5595  
5596  
5597  
5598  ;------------------------------------------------------------------------------
5599  Object SupW_AuroraFuelAirBomb
5600  
5601    ; *** ART Parameters ***
5602    Draw = W3DModelDraw ModuleTag_01
5603      DefaultConditionState
5604        Model = EXCarptBmb
5605      End
5606    End
5607  
5608    ; ***DESIGN parameters ***
5609    DisplayName         = OBJECT:FuelAirBomb
5610    EditorSorting       = SYSTEM
5611    TransportSlotCount  = 10                 ;how many "slots" we take in a transport (0 == not transportable)
5612    VisionRange         = 300.0  
5613    ShroudClearingRange = 0
5614    ArmorSet
5615      Conditions      = None
5616      Armor           = ProjectileArmor
5617      DamageFX        = None
5618    End
5619  
5620    ; *** AUDIO Parameters ***
5621    
5622    ; *** ENGINEERING Parameters ***
5623    KindOf            = PROJECTILE
5624    Body = ActiveBody ModuleTag_02
5625      MaxHealth       = 100.0
5626      InitialHealth   = 100.0
5627    End
5628  
5629  ;  Behavior = CreateObjectDie ModuleTag_03
5630  ;    CreationList = SupW_OCL_FuelAirBomb
5631  ;  End
5632    Behavior = FXListDie ModuleTag_04
5633      ;DeathFX = FX_DaisyCutterExplode
5634      DeathFX = AirF_FX_AuroraBombExplode
5635    End
5636       
5637    
5638    Behavior = PhysicsBehavior ModuleTag_05
5639      Mass                = 75.0
5640      AerodynamicFriction = 1  ; this is now friction-per-sec
5641      ForwardFriction     = 33     ; this is now friction-per-sec
5642      CenterOfMassOffset  = 2  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
5643    End
5644    Behavior = MissileAIUpdate ModuleTag_06
5645      TryToFollowTarget   = No 
5646      FuelLifetime        = 0
5647      IgnitionDelay       = 0
5648      InitialVelocity     = 0                ; in dist/sec
5649      DistanceToTravelBeforeTurning = 0
5650      DistanceToTargetBeforeDiving  = 0
5651    End
5652    Behavior = HeightDieUpdate ModuleTag_07
5653      TargetHeight = 15.0
5654      TargetHeightIncludesStructures = Yes
5655    End
5656    Locomotor = SET_NORMAL AuroraBombLocomotor   ; yes, that's right.
5657    Geometry = Sphere
5658    GeometryIsSmall = Yes
5659    GeometryMajorRadius = 12.0
5660  
5661  End
5662  
5663  ;------------------------------------------------------------------------------
5664  Object SupW_AuroraFuelAirGas
5665  
5666    ; *** ART Parameters ***
5667    ; *** DESIGN Parameters ***
5668  
5669    ; *** ENGINEERING Parameters ***
5670    KindOf = IMMOBILE
5671    Body                  = ActiveBody ModuleTag_01
5672      MaxHealth           = 1.0
5673      InitialHealth       = 1.0
5674    End
5675  
5676    Behavior = PhysicsBehavior ModuleTag_02
5677      Mass                = 150.0
5678      AerodynamicFriction = 7  ; this is now friction-per-sec
5679      ForwardFriction     = 200   ; this is now friction-per-sec
5680    End
5681    Behavior = HeightDieUpdate ModuleTag_03
5682      TargetHeight                     = 15.0
5683      TargetHeightIncludesStructures   = Yes
5684      DestroyAttachedParticlesAtHeight = 16.0   ; Hack, todo remove this
5685    End
5686    Behavior = SlowDeathBehavior ModuleTag_04
5687      DestructionDelay        = 1000
5688      DestructionDelayVariance = 100
5689      FX                  = INITIAL AirF_FX_AuroraBombIgnite
5690      FX                  = FINAL   FX_DaisyCutterFinalExplosion
5691      Weapon              = MIDPOINT   DaisyCutterFlameWeapon    ; Just a spot of flame to light trees on fire
5692      Weapon              = FINAL   SupW_FuelBombDetonationWeapon
5693    End
5694  
5695  End
5696  
5697  
5698  
5699  ; Missiles used by the Patriot.  This is the projectile attached to PatriotMissileWeapon in Weapon.ini
5700  ;------------------------------------------------------------------------------
5701  Object PatriotMissileEMP
5702  
5703    ; *** ART Parameters ***
5704    Draw = W3DModelDraw ModuleTag_01
5705      OkToChangeModelColor = Yes
5706      DefaultConditionState
5707        Model = AVRaptor_M
5708      End
5709      ConditionState = JAMMED
5710        ParticleSysBone = None SparksMedium
5711      End
5712    End
5713  
5714    ; ***DESIGN parameters ***
5715    DisplayName      = OBJECT:PatriotMissile
5716    EditorSorting   = SYSTEM
5717    VisionRange = 300.0
5718    ShroudClearingRange = 0
5719  
5720    ArmorSet
5721      Conditions      = None
5722      Armor           = ProjectileArmor
5723      DamageFX        = None
5724    End
5725  
5726    ; *** ENGINEERING Parameters ***
5727    KindOf = CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
5728    Body = ActiveBody ModuleTag_02
5729      MaxHealth       = 100.0
5730      InitialHealth   = 100.0
5731  
5732      SubdualDamageCap = 200
5733      SubdualDamageHealRate = 100000
5734      SubdualDamageHealAmount = 50
5735    End
5736  
5737  
5738  
5739   ;---- begin Projectile death behaviors
5740    Behavior = InstantDeathBehavior DeathModuleTag_01
5741      DeathTypes = NONE +DETONATED
5742      ; we detonated normally.
5743      ; no FX, just quiet destroy ourselves
5744      FX                  = FINAL   WeaponFX_EMPRocketDetonation
5745    End
5746    Behavior = InstantDeathBehavior DeathModuleTag_02
5747      DeathTypes = NONE +LASERED
5748      ; shot down by laser.
5749      FX         = FX_GenericMissileDisintegrate
5750      OCL        = OCL_GenericMissileDisintegrate
5751    End
5752    Behavior = InstantDeathBehavior DeathModuleTag_03
5753      DeathTypes = ALL -LASERED -DETONATED
5754      ; shot down by nonlaser.
5755  ;    FX         = FX_GenericMissileDeath
5756     FX                  = FINAL   WeaponFX_EMPRocketDetonation
5757    End
5758  ; ---- end Projectile death behaviors
5759      
5760    Behavior = PhysicsBehavior ModuleTag_04
5761      Mass = 1
5762    End
5763    Behavior = MissileAIUpdate ModuleTag_05
5764      TryToFollowTarget       = Yes 
5765      FuelLifetime            = 10000
5766      InitialVelocity         = 50                ; in dist/sec
5767      IgnitionDelay           = 0
5768      DistanceToTravelBeforeTurning = 5
5769      DistanceToTargetForLock = 100  ; If it gets within 100 of the target, it kills the target.
5770    End
5771    Locomotor = SET_NORMAL PatriotMissileLocomotor
5772  
5773  
5774   ; Behavior = CreateObjectDie ModuleTag_07
5775   ;   CreationList = SupW_OCL_FuelAirBomb
5776   ;   CreationList = SupW_OCL_PatriotEMPEffectSpheroid
5777   ; End
5778  
5779    Behavior = FireWeaponWhenDeadBehavior ModuleTag_09
5780  ;    DeathWeapon   = SupW_PatriotMissileAssistWeapon
5781     DeathWeapon   = ScudStormDamageWeapon
5782  ;    DeathWeapon   = MOABDetonationWeapon
5783  ;    StartsActive  = Yes                      ; turned on by upgrade
5784    End
5785  
5786  ;  Behavior = SlowDeathBehavior ModuleTag_10
5787  ;    DestructionDelay        = 0
5788  ;    DestructionDelayVariance = 0
5789  ;    FX                  = FINAL   WeaponFX_EMPRocketDetonation
5790  ;  End
5791  
5792    Geometry = Sphere
5793    GeometryIsSmall = Yes
5794    GeometryMajorRadius = 2.0
5795  
5796  End
5797  
5798  
5799  
5800  Object PatriotMissileEMPHelper
5801  
5802  ; *** ART Parameters ***
5803  ; ***DESIGN parameters ***
5804  ; *** ENGINEERING Parameters ***
5805    KindOf = PROJECTILE
5806    Body = ActiveBody ModuleTag_01
5807      MaxHealth       = 100.0
5808      InitialHealth   = 100.0
5809    End
5810    
5811    
5812    Behavior = AIUpdateInterface ModuleTag_02
5813    End
5814    Behavior = PhysicsBehavior ModuleTag_03
5815      Mass                = 1.0
5816      AerodynamicFriction = 1  ; this is now friction-per-sec
5817      ForwardFriction     = 22     ; this is now friction-per-sec
5818      CenterOfMassOffset  = 0  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
5819    End
5820    Behavior = HeightDieUpdate ModuleTag_04
5821      TargetHeight = 5.0
5822      TargetHeightIncludesStructures = No
5823    End
5824    Locomotor = SET_NORMAL None
5825  
5826    Behavior = EMPUpdate ModuleTag_05
5827      DisabledDuration    = 5000
5828      Lifetime            = 500
5829      StartFadeTime       = 300
5830      StartScale          = 0.01  
5831      TargetScaleMin      = 6.00
5832      TargetScaleMax      = 7.00
5833      StartColor          = R:0 G:255 B:255
5834      EndColor            = R:0 G:128 B:128
5835      EffectRadius        = 10
5836      DisableFXParticleSystem = EMPSparks
5837    End
5838  
5839  
5840    Geometry = Sphere
5841    GeometryIsSmall = Yes
5842    GeometryMajorRadius = 2.0
5843  End
5844  
5845  
5846  ;--------------------------------------------------------------------------------------------------------
5847  ;------------------------------------------------------------------------------
5848  Object NukeBomb
5849  
5850    ; *** ART Parameters ***
5851    Draw = W3DModelDraw ModuleTag_01
5852      OkToChangeModelColor = Yes
5853      DefaultConditionState
5854        Model = AVBomber_B
5855      End
5856    End
5857  
5858    ; ***DESIGN parameters ***
5859    DisplayName         = OBJECT:Missile
5860    EditorSorting       = SYSTEM
5861    VisionRange         = 0.0  ; Projectiles can't see, but superweapons *may need to*
5862    TransportSlotCount  = 1    ; since Napalm Strike carries us as payload, not weapon
5863    ArmorSet
5864      Conditions      = None
5865      Armor           = ProjectileArmor
5866      DamageFX        = None
5867    End
5868  
5869    ; *** ENGINEERING Parameters ***
5870    KindOf = PRELOAD NO_COLLIDE UNATTACKABLE;  
5871    Body = ActiveBody ModuleTag_02
5872      MaxHealth       = 100.0
5873      InitialHealth   = 100.0
5874    End
5875  
5876  
5877    Behavior = PhysicsBehavior ModuleTag_06
5878      Mass                = 75.0
5879      AerodynamicFriction = 0.1  ; this is now friction-per-sec
5880      ForwardFriction     = 0.1  ; this is now friction-per-sec
5881      CenterOfMassOffset  = 0.13  ; Default of 0 means nothing tips as it falls.  Positive tips forward, negative tips back
5882    End
5883  
5884    Behavior = HeightDieUpdate ModuleTag_10
5885      TargetHeight = 10.0
5886      TargetHeightIncludesStructures = No
5887    End
5888  
5889  
5890  
5891  ; **********************************HERE IT IS, TODD
5892    Behavior = FireWeaponWhenDeadBehavior ModuleTag998
5893      DeathWeapon   = HelixNukeBombDetonationWeaponWithAnEvenLongerName
5894      DeathTypes = ALL
5895      StartsActive  = Yes
5896    End;
5897    Behavior = InstantDeathBehavior ModuleTag_Death02
5898      DeathTypes          = ALL
5899    End
5900  
5901  ; **********************************HERE IT IS, TODD
5902  
5903  
5904    Geometry = Sphere
5905    GeometryIsSmall = Yes
5906    GeometryMajorRadius = 1.0
5907    Scale = 0.7
5908  
5909  End
5910  
5911  
5912  
5913  ;------------------------------------------------------------------------------
5914  Object USSBenderGunShell
5915  
5916    ; *** ART Parameters ***
5917    Draw = W3DModelDraw ModuleTag_01
5918      ConditionState = NONE
5919        Model = AVTankShel
5920      End
5921    End
5922  
5923    ; ***DESIGN parameters ***
5924    DisplayName       = OBJECT:TankShell
5925    EditorSorting     = SYSTEM
5926    ArmorSet
5927      Armor = ProjectileArmor
5928    End
5929    VisionRange = 0.0  
5930  
5931    ; *** ENGINEERING Parameters ***
5932    KindOf = PROJECTILE
5933    Body = ActiveBody ModuleTag_02
5934      MaxHealth       = 100.0
5935      InitialHealth   = 100.0
5936    End
5937  
5938    Behavior = DestroyDie ModuleTag_03
5939      ;nothing
5940    End
5941      
5942    Behavior = DumbProjectileBehavior ModuleTag_04
5943      ; To tweak a Bezier path, please see GS
5944      FirstHeight = 110  ; Height of Bezier control points above highest intervening terrain
5945      SecondHeight = 110
5946      FirstPercentIndent = 50% ; Percentage of shot distance control points are placed
5947      SecondPercentIndent = 90%
5948      FlightPathAdjustDistPerSecond   = 100 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
5949    End
5950  
5951    Behavior = PhysicsBehavior ModuleTag_05
5952      Mass = 0.01   ; we can't have a zero mass, but we want it pretty tiny...
5953    End
5954  
5955    Geometry = Sphere
5956    GeometryIsSmall = Yes
5957    GeometryMajorRadius = 1.0
5958  
5959    Scale = 1.2                            ;Scaling
5960  
5961  End
5962  
5963  ;------------------------------------------------------------------------------
5964  Object ScorpionMissile2
5965  
5966    ; *** ART Parameters ***
5967    Draw = W3DModelDraw ModuleTag_01
5968      OkToChangeModelColor = Yes
5969      ConditionState = NONE
5970        Model = UVScorpion_m
5971      End
5972    End
5973  
5974    ; ***DESIGN parameters ***
5975    DisplayName      = OBJECT:Missile
5976    EditorSorting   = SYSTEM
5977    VisionRange = 0.0  
5978    ArmorSet
5979      Conditions      = None
5980      Armor           = ProjectileArmor
5981      DamageFX        = None
5982    End
5983  
5984    ; *** ENGINEERING Parameters ***
5985    KindOf = PROJECTILE SMALL_MISSILE
5986    Body = ActiveBody ModuleTag_02
5987      MaxHealth       = 100.0
5988      InitialHealth   = 100.0
5989    End
5990  
5991  ; ---- begin Projectile death behaviors
5992    Behavior = InstantDeathBehavior DeathModuleTag_01
5993      DeathTypes = NONE +DETONATED
5994      ; we detonated normally.
5995      ; no FX, just quiet destroy ourselves
5996    End
5997    Behavior = InstantDeathBehavior DeathModuleTag_02
5998      DeathTypes = NONE +LASERED
5999      ; shot down by laser.
6000      FX         = FX_GenericMissileDisintegrate
6001      OCL        = OCL_GenericMissileDisintegrate
6002    End
6003    Behavior = InstantDeathBehavior DeathModuleTag_03
6004      DeathTypes = ALL -LASERED -DETONATED
6005      ; shot down by nonlaser.
6006      FX         = FX_GenericMissileDeath
6007    End
6008  ; ---- end Projectile death behaviors
6009  
6010    Behavior = PhysicsBehavior ModuleTag_07
6011      Mass = 1
6012    End
6013    Behavior = MissileAIUpdate ModuleTag_08
6014      TryToFollowTarget     = Yes 
6015      FuelLifetime          = 10000
6016      InitialVelocity       = 75                ; in dist/sec
6017      IgnitionDelay         = 30
6018      IgnitionFX            = FX_JetMissileIgnition
6019    End
6020    Locomotor = SET_NORMAL ScorpionMissileLocomotor2
6021  
6022  
6023    Behavior = WeaponBonusUpgrade ModuleTag_08
6024      TriggeredBy = Upgrade_GLAAPRockets
6025    End
6026  
6027    Behavior = UnpauseSpecialPowerUpgrade ModuleTag_18
6028    SpecialPowerTemplate = SpecialAbilityRedGuardCaptureBuilding
6029    TriggeredBy = Upgrade_InfantryCaptureBuilding
6030    End
6031  
6032    Geometry = Sphere
6033    GeometryIsSmall = Yes
6034    GeometryMajorRadius = 1.0
6035  
6036    
6037  
6038  End
6039  
6040  
6041  Object ChinaSMine
6042    ; *** ART Parameters ***
6043    Draw = W3DModelDraw ModuleTag_01
6044      ConditionState        = NONE
6045        Model               = AVRaptor_M
6046      End
6047    End
6048    ; ***DESIGN parameters ***
6049    DisplayName           = OBJECT:Missile
6050    EditorSorting         = SYSTEM
6051    TransportSlotCount    = 0                 ;how many "slots" we take in a transport (0 == not transportable)
6052    VisionRange           = 0
6053    ArmorSet
6054      Conditions      = None
6055      Armor           = ProjectileArmor
6056      DamageFX        = None
6057    End
6058    ; *** ENGINEERING Parameters ***
6059    KindOf = CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
6060    Body = ActiveBody ModuleTag_02
6061      MaxHealth       = 100.0
6062      InitialHealth   = 100.0
6063    End
6064    Behavior = DestroyDie ModuleTag_03
6065      ;nothing
6066    End
6067    Behavior = DumbProjectileBehavior ModuleTag_04
6068      DetonateCallsKill = Yes
6069      FirstHeight = 50  ; Height of Bezier control points above highest intervening terrain
6070      SecondHeight = 150
6071      FirstPercentIndent = 20% ; Percentage of shot distance control points are placed
6072      SecondPercentIndent = 90%
6073      FlightPathAdjustDistPerSecond   = 0 ; Can allow a max speed this can attempt to follow a target. Units are their velocity we can tag.
6074    End
6075    Behavior = PhysicsBehavior ModuleTag_05
6076      Mass = 1.0
6077    End
6078    Behavior = HeightDieUpdate ModuleTag_06
6079      TargetHeight = 1.0
6080      TargetHeightIncludesStructures = No
6081      OnlyWhenMovingDown = Yes
6082      InitialDelay                    = 1000
6083    End
6084  
6085    Behavior = GenerateMinefieldBehavior ModuleTag_07
6086      MineName                = ChinaClusterMine
6087      DistanceAroundObject    = 0
6088      GenerateOnlyOnDeath     = Yes
6089     SmartBorder             = No
6090      SmartBorderSkipInterior = No
6091      AlwaysCircular          = Yes
6092      GenerationFX            = WeaponFX_ClusterMineImpact
6093    End
6094  
6095    Behavior = InstantDeathBehavior DeathModuleTag_09
6096      DeathTypes = NONE +DETONATED
6097    End
6098    Geometry = Sphere
6099    GeometryIsSmall = Yes
6100    GeometryMajorRadius = 1.0
6101  End
6102  
6103  
6104  Object ToxinPlaneDropObj
6105  
6106    Draw = W3DModelDraw ModuleTag_01
6107      DefaultConditionState
6108        Model = EXHideBomb
6109      End
6110    End
6111  
6112    Scale =0.6
6113  
6114    Draw = W3DModelDraw ModuleTag_12
6115      DefaultConditionState
6116        Model = PMparacht_SKNc
6117      End
6118    End
6119  
6120    ; ***DESIGN parameters ***
6121    DisplayName         = OBJECT:Missile
6122    EditorSorting       = SYSTEM
6123    VisionRange         = 200 ;default value, you can override this in code
6124    TransportSlotCount  = 1    ; since Napalm Strike carries us as payload, not weapon
6125  
6126    SoundFallingFromPlane = DaisyCutterWeapon
6127  
6128    ArmorSet
6129      Conditions      = None
6130      Armor           = ProjectileArmor
6131      DamageFX        = None
6132    End
6133  
6134    ; *** ENGINEERING Parameters ***
6135    KindOf = PRELOAD PROJECTILE
6136  
6137    Body = ActiveBody ModuleTag_02
6138      MaxHealth       = 100.0
6139      InitialHealth   = 100.0
6140    End
6141  
6142    Behavior = MissileAIUpdate ModuleTag_03
6143      TryToFollowTarget   = No ;Yes
6144      FuelLifetime        = 3000
6145      InitialVelocity     = 0                ; in dist/sec
6146      GarrisonHitKillRequiredKindOf = INFANTRY
6147      GarrisonHitKillForbiddenKindOf = NONE
6148      GarrisonHitKillCount = 2
6149    End
6150  
6151    Locomotor = SET_NORMAL ToxinDropLocomotor
6152  
6153    Behavior = PhysicsBehavior ModuleTag_04
6154      Mass                  = 50.0
6155    End
6156  
6157    Shadow          = SHADOW_VOLUME
6158    Geometry = CYLINDER
6159    GeometryMajorRadius = 3.0
6160    GeometryHeight = 6    
6161    GeometryIsSmall = Yes 
6162  
6163  End
6164  ;------------------------------------------------------------------------------
6165  Object RaptorJetMissile2
6166  
6167    ; *** ART Parameters ***
6168    Draw = W3DModelDraw ModuleTag_01
6169      OkToChangeModelColor = Yes
6170      DefaultConditionState
6171        Model = AVRaptor_M
6172      End
6173    End
6174  
6175    ; ***DESIGN parameters ***
6176    DisplayName       = OBJECT:Missile
6177    EditorSorting     = SYSTEM
6178    VisionRange = 0.0  
6179  
6180    ; *** ENGINEERING Parameters ***
6181    KindOf = PRELOAD CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
6182    Body = ActiveBody ModuleTag_02
6183      MaxHealth       = 100.0
6184      InitialHealth   = 100.0
6185    End
6186  
6187  ; ---- begin Projectile death behaviors
6188    Behavior = InstantDeathBehavior DeathModuleTag_01
6189      DeathTypes = NONE +DETONATED
6190      ; we detonated normally.
6191      ; no FX, just quiet destroy ourselves
6192    End
6193    Behavior = InstantDeathBehavior DeathModuleTag_02
6194      DeathTypes = NONE +LASERED
6195      ; shot down by laser.
6196      FX         = FX_GenericMissileDisintegrate
6197      OCL        = OCL_GenericMissileDisintegrate
6198    End
6199    Behavior = InstantDeathBehavior DeathModuleTag_03
6200      DeathTypes = ALL -LASERED -DETONATED
6201      ; shot down by nonlaser.
6202      FX         = FX_GenericMissileDeath
6203    End
6204  ; ---- end Projectile death behaviors
6205  
6206    Behavior = PhysicsBehavior ModuleTag_07
6207      Mass = 1
6208    End
6209    Behavior = MissileAIUpdate ModuleTag_08
6210      TryToFollowTarget     = Yes 
6211      FuelLifetime          = 10000
6212      InitialVelocity       = 75                ; in dist/sec
6213      IgnitionDelay         = 30
6214      IgnitionFX            = FX_JetMissileIgnition
6215    End
6216    Locomotor = SET_NORMAL ScorpionMissileLocomotor2
6217  
6218    Geometry = Sphere
6219    GeometryIsSmall = Yes
6220    GeometryMajorRadius = 1.0
6221  
6222  End
6223  
6224  
6225  Object SAMMissile
6226  
6227    ; *** ART Parameters ***
6228    Draw = W3DModelDraw ModuleTag_01
6229      OkToChangeModelColor = Yes
6230      ConditionState = NONE
6231        Model = NBSAM_M
6232      End
6233    End
6234  
6235    ; ***DESIGN parameters ***
6236    DisplayName      = OBJECT:PatriotMissile
6237    EditorSorting   = VEHICLE
6238    VisionRange = 300.0
6239    ShroudClearingRange = 0
6240  
6241    ; *** ENGINEERING Parameters ***
6242    KindOf = CAN_CAST_REFLECTIONS PROJECTILE SMALL_MISSILE
6243    Body = ActiveBody ModuleTag_02
6244      MaxHealth       = 100.0
6245      InitialHealth   = 100.0
6246    End
6247  
6248  ; ---- begin Projectile death behaviors
6249    Behavior = InstantDeathBehavior DeathModuleTag_01
6250      DeathTypes = NONE +DETONATED
6251      ; we detonated normally.
6252      ; no FX, just quiet destroy ourselves
6253    End
6254    Behavior = InstantDeathBehavior DeathModuleTag_02
6255      DeathTypes = NONE +LASERED
6256      ; shot down by laser.
6257      FX         = FX_GenericMissileDisintegrate
6258      OCL        = OCL_GenericMissileDisintegrate
6259    End
6260    Behavior = InstantDeathBehavior DeathModuleTag_03
6261      DeathTypes = ALL -LASERED -DETONATED
6262      ; shot down by nonlaser.
6263      FX         = FX_GenericMissileDeath
6264    End
6265  ; ---- end Projectile death behaviors
6266      
6267    Behavior = PhysicsBehavior ModuleTag_04
6268      Mass = 1
6269    End
6270    Behavior = MissileAIUpdate ModuleTag_05
6271      TryToFollowTarget       = Yes 
6272      FuelLifetime            = 10000
6273      InitialVelocity         = 50                ; in dist/sec
6274      IgnitionDelay           = 0
6275      DistanceToTravelBeforeTurning = 5
6276      DistanceToTargetForLock = 100  ; If it gets within 100 of the target, it kills the target.
6277    End
6278    Locomotor = SET_NORMAL PatriotMissileLocomotor
6279    Geometry = Sphere
6280    GeometryIsSmall = Yes
6281    GeometryMajorRadius = 2.0
6282  
6283  End


Generated: Sat Mar 28 08:18:23 2009 Cross-referenced by PHPXref 0.7