[ Index ] WAROFGENERALS

PHP Cross Reference of WAROFGENERALS MODS SOURCES

title

Body

[close]

/Command and conquer Generals/Call to arms/Data/INI/ -> Weapon.ini (source)

   1  ;//////////////////////////////////////////////////////////////////////////////
   2  ;FILE: Weapon.ini (SYSTEM) ////////////////////////////////////////////////////
   3  ;//////////////////////////////////////////////////////////////////////////////
   4  
   5  ; Please keep all weapons belonging to the same unit grouped together, instead
   6  ; of grouping all Elite weapons together.
   7  
   8  ;------------------------------------------------------------------------------
   9  ;------------------------------------------------------------------------------
  10  ;------------------------------------------------------------------------------
  11  ; these are the new, "shell-based" projectile tank weapons.
  12  ;------------------------------------------------------------------------------
  13  ;------------------------------------------------------------------------------
  14  ;------------------------------------------------------------------------------
  15  
  16  ;------------------------------------------------------------------------------
  17  Weapon MarauderTankGun
  18    PrimaryDamage = 60.0
  19    PrimaryDamageRadius = 5.0
  20    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  21    AttackRange = 150.0
  22    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  23    MaxTargetPitch = 15                          ; ditto
  24    DamageType = ARMOR_PIERCING
  25    DeathType = NORMAL
  26    WeaponSpeed = 300                           ; dist/sec 
  27    WeaponRecoil = 10                            
  28    ProjectileObject = MarauderTankShell
  29    FireFX = WeaponFX_GenericTankGunNoTracer
  30    VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  31    ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  32    FireSound = MarauderTankWeapon
  33    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  34    DelayBetweenShots = 2000        ; time between shots, msec
  35    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  36    ClipReloadTime = 0              ; how long to reload a Clip, msec
  37  
  38    ; note, these only apply to units that aren't the explicit target 
  39    ; (ie, units that just happen to "get in the way"... projectiles
  40    ; always collide with the Designated Target, regardless of these flags
  41    ProjectileCollidesWith = STRUCTURES WALLS 
  42  
  43  End
  44  
  45  ;------------------------------------------------------------------------------
  46  Weapon MarauderTankGunUpgradeOne
  47    PrimaryDamage = 60.0
  48    PrimaryDamageRadius = 5.0
  49    AttackRange = 150.0
  50    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  51    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  52    MaxTargetPitch = 15                          ; ditto
  53    DamageType = ARMOR_PIERCING
  54    DeathType = NORMAL
  55    WeaponSpeed = 400                           ; dist/sec 
  56    WeaponRecoil = 10                            ; angle to deflect the model when firing
  57    ProjectileObject = MarauderTankShell
  58    FireFX = WeaponFX_GenericTankGunNoTracer
  59    VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  60    ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  61    FireSound = MarauderTankWeapon
  62    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  63    DelayBetweenShots = 1500        ; time between shots, msec
  64    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  65    ClipReloadTime = 0              ; how long to reload a Clip, msec
  66  
  67    ; note, these only apply to units that aren't the explicit target 
  68    ; (ie, units that just happen to "get in the way"... projectiles
  69    ; always collide with the Designated Target, regardless of these flags
  70    ProjectileCollidesWith = STRUCTURES WALLS 
  71  End
  72  
  73  ;------------------------------------------------------------------------------
  74  Weapon MarauderTankGunUpgradeTwo
  75    PrimaryDamage = 60.0
  76    PrimaryDamageRadius = 5.0
  77    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  78    AttackRange = 150.0
  79    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  80    MaxTargetPitch = 15                          ; ditto
  81    DamageType = ARMOR_PIERCING
  82    DeathType = NORMAL
  83    WeaponSpeed = 500                           ; dist/sec 
  84    WeaponRecoil = 10                            ; angle to deflect the model when firing
  85    ProjectileObject = MarauderTankShell
  86    FireFX = WeaponFX_GenericTankGunNoTracer
  87    VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  88    ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  89    FireSound = MarauderTankWeapon
  90    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  91    DelayBetweenShots = 750           ; time between shots, msec
  92    ClipSize = 2                      ; how many shots in a Clip (0 == infinite)
  93    ClipReloadTime = 100              ; how long to reload a Clip, msec
  94  
  95    ; note, these only apply to units that aren't the explicit target 
  96    ; (ie, units that just happen to "get in the way"... projectiles
  97    ; always collide with the Designated Target, regardless of these flags
  98    ProjectileCollidesWith = STRUCTURES WALLS 
  99  End
 100  
 101  ;------------------------------------------------------------------------------
 102  Weapon ScorpionTankGun
 103    PrimaryDamage = 20.0
 104    PrimaryDamageRadius = 5.0
 105    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 106    AttackRange = 150.0
 107    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
 108    MaxTargetPitch = 15                          ; ditto
 109    DamageType = ARMOR_PIERCING
 110    DeathType = NORMAL
 111    WeaponSpeed = 400                           ; dist/sec 
 112    WeaponRecoil = 5                            ; angle to deflect the model when firing
 113    ProjectileObject = ScorpionTankShell
 114    FireFX = WeaponFX_GenericTankGunNoTracerSmall
 115    VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
 116    ;Commented out to show it has been moved to ScoprionTankGunFXWeapon, 
 117    ;because the art for the Toxin shell version incorporates the normal explosion.
 118  ;  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
 119    FireSound = ScorpionTankWeapon
 120    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 121    DelayBetweenShots = 1000        ; time between shots, msec
 122    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 123    ClipReloadTime = 0              ; how long to reload a Clip, msec
 124  
 125  
 126    ; note, these only apply to units that aren't the explicit target 
 127    ; (ie, units that just happen to "get in the way"... projectiles
 128    ; always collide with the Designated Target, regardless of these flags
 129    ProjectileCollidesWith = STRUCTURES WALLS 
 130  End
 131  
 132  ;------------------------------------------------------------------------------
 133  Weapon ScoprionTankGunFXWeapon
 134    PrimaryDamage = 0.0
 135    PrimaryDamageRadius = 0.0
 136    AttackRange = 125.0
 137    FireFX = WeaponFX_GenericTankShellDetonation
 138  End
 139  
 140  ;------------------------------------------------------------------------------
 141  Weapon OverlordTankGun
 142    PrimaryDamage = 80 ;100.0
 143    PrimaryDamageRadius = 5.0
 144    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 145    SecondaryDamage = 20.0
 146    SecondaryDamageRadius = 10.0
 147    AttackRange = 175.0
 148    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
 149    MaxTargetPitch = 15                          ; ditto
 150    DamageType = ARMOR_PIERCING
 151    DeathType = NORMAL
 152    WeaponSpeed = 300                           ; dist/sec 
 153    WeaponRecoil = 5                            ; angle to deflect the model when firing
 154    ProjectileObject = OverlordTankShell
 155    FireFX            = WeaponFX_GenericTankGunNoTracer
 156    VeterancyFireFX   = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
 157    ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
 158    FireSound = OverlordTankWeapon
 159    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 160    DelayBetweenShots = 300              ; time between shots, msec
 161    ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
 162    ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
 163    ClipReloadTime = 2000              ; how long to reload a Clip, msec
 164    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells
 165  
 166    ; note, these only apply to units that aren't the explicit target 
 167    ; (ie, units that just happen to "get in the way"... projectiles
 168    ; always collide with the Designated Target, regardless of these flags
 169    ProjectileCollidesWith = STRUCTURES WALLS 
 170  End
 171  
 172  ;------------------------------------------------------------------------------
 173  Weapon StrategyCenterGun
 174    PrimaryDamage         = 200.0            
 175    PrimaryDamageRadius   = 25.0      
 176    ScatterRadius         = 15.0
 177    ScatterRadiusVsInfantry = 15.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 178    AttackRange = 400.0
 179    MinimumAttackRange = 100.0
 180    MinTargetPitch = 45                         ; we may not target anything outside of this pitch range
 181    MaxTargetPitch = 80                          ; ditto
 182    DamageType = EXPLOSION
 183    DeathType = EXPLODED
 184    WeaponSpeed = 150                           ; dist/sec 
 185    WeaponRecoil = 5                            ; angle to deflect the model when firing
 186    ProjectileObject = StrategyCenterArtilleryShell
 187    FireFX = WeaponFX_GenericTankGunNoTracer
 188    ProjectileDetonationFX = FX_ArtilleryBarrage
 189    FireSound = StrategyCenter_ArtilleryRound
 190    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 191    DelayBetweenShots = 7000              ; time between shots, msec
 192    ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
 193    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 194    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells
 195  
 196    ; note, these only apply to units that aren't the explicit target 
 197    ; (ie, units that just happen to "get in the way"... projectiles
 198    ; always collide with the Designated Target, regardless of these flags
 199    ProjectileCollidesWith = STRUCTURES WALLS 
 200  End
 201  
 202  ;------------------------------------------------------------------------------
 203  Weapon BattleMasterTankGun
 204    PrimaryDamage           = 60.0
 205    PrimaryDamageRadius     = 5.0
 206    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 207    AttackRange             = 150.0
 208    MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
 209    MaxTargetPitch          = 15                          ; ditto
 210    DamageType              = ARMOR_PIERCING
 211    DeathType               = NORMAL
 212    WeaponSpeed             = 400                           ; dist/sec 
 213    WeaponRecoil            = 5                            ; angle to deflect the model when firing
 214    ProjectileObject        = BattleMasterTankShell
 215    FireFX                  = WeaponFX_GenericTankGunNoTracerSmall
 216    VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
 217    ProjectileDetonationFX  = WeaponFX_GenericTankShellDetonation
 218    FireSound               = BattlemasterTankWeapon
 219    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
 220    DelayBetweenShots       = 2000               ; time between shots, msec
 221    ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
 222    ClipReloadTime          = 0              ; how long to reload a Clip, msec
 223    WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells
 224  
 225    ; note, these only apply to units that aren't the explicit target 
 226    ; (ie, units that just happen to "get in the way"... projectiles
 227    ; always collide with the Designated Target, regardless of these flags
 228    ProjectileCollidesWith  = STRUCTURES WALLS 
 229  End
 230  
 231  ;------------------------------------------------------------------------------
 232  Weapon CrusaderTankGun
 233    PrimaryDamage           = 60.0
 234    PrimaryDamageRadius     = 5.0
 235    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 236    AttackRange             = 150.0
 237    MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
 238    MaxTargetPitch          = 15                          ; ditto
 239    DamageType              = ARMOR_PIERCING
 240    DeathType               = NORMAL
 241    WeaponSpeed             = 400                           ; dist/sec 
 242    WeaponRecoil            = 5                            ; angle to deflect the model when firing
 243    ProjectileObject        = GenericTankShell
 244    FireFX                  = WeaponFX_GenericTankGunNoTracer
 245    VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
 246    ProjectileDetonationFX  = WeaponFX_GenericTankShellDetonation
 247    FireSound               = CrusaderTankWeapon
 248    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
 249    DelayBetweenShots       = 2000               ; time between shots, msec
 250    ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
 251    ClipReloadTime          = 0              ; how long to reload a Clip, msec
 252    ProjectileCollidesWith  = STRUCTURES WALLS 
 253  End
 254  
 255  ;------------------------------------------------------------------------------
 256  Weapon PaladinTankGun
 257    PrimaryDamage = 80.0 ;60.0
 258    PrimaryDamageRadius = 5.0
 259    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 260    AttackRange = 150.0
 261    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
 262    MaxTargetPitch = 15                          ; ditto
 263    DamageType = ARMOR_PIERCING
 264    DeathType = NORMAL
 265    WeaponSpeed = 300                           ; dist/sec 
 266    WeaponRecoil = 5                            ; angle to deflect the model when firing
 267    ProjectileObject = GenericTankShell
 268    FireFX           = WeaponFX_GenericTankGunNoTracer
 269    VeterancyFireFX  = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
 270    ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
 271    FireSound = PaladinTankWeapon
 272    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 273    DelayBetweenShots = 2000               ; time between shots, msec
 274    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 275    ClipReloadTime = 0              ; how long to reload a Clip, msec
 276  
 277    ; note, these only apply to units that aren't the explicit target 
 278    ; (ie, units that just happen to "get in the way"... projectiles
 279    ; always collide with the Designated Target, regardless of these flags
 280    ProjectileCollidesWith = STRUCTURES WALLS 
 281  End
 282  
 283  ;------------------------------------------------------------------------------
 284  Weapon PaladinPointDefenseLaser
 285    PrimaryDamage       = 100.0
 286    PrimaryDamageRadius = 0.0
 287    AttackRange         = 65.0 
 288    DamageType          = LASER
 289    DeathType           = LASERED
 290    WeaponSpeed         = 999999.0     ; dist/sec 
 291    DelayBetweenShots   = 1000         ; time between shots, msec
 292    ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
 293    ClipReloadTime      = 0            ; how long to reload a Clip, msec
 294    AcceptableAimDelta  = 180          ; Don't need to turn at all.
 295    AntiSmallMissile    = Yes
 296    AntiProjectile      = No
 297    LaserName           = PointDefenseLaserBeam
 298    FireFX              = WeaponFX_PaladinPointDefenseLaser
 299  End
 300  
 301  ;------------------------------------------------------------------------------
 302  Weapon TechnicalCannonWeapon
 303    PrimaryDamage             = 45.0
 304    PrimaryDamageRadius       = 25.0
 305    ScatterRadiusVsInfantry   = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 306    AttackRange               = 150.0
 307    MinTargetPitch            = -15                         ; we may not target anything outside of this pitch range
 308    MaxTargetPitch            = 15                          ; ditto
 309    DamageType                = COMANCHE_VULCAN  
 310    DeathType                 = EXPLODED
 311    WeaponSpeed               = 300                          ; dist/sec 
 312    WeaponRecoil              = 5                            ; angle to deflect the model when firing
 313    ProjectileObject          = GenericTankShell
 314    FireFX                    = WeaponFX_GenericTankGunNoTracer
 315    ProjectileDetonationFX    = WeaponFX_GenericTankShellDetonation
 316    FireSound                 = ScorpionTankWeapon
 317    RadiusDamageAffects       = ALLIES ENEMIES NEUTRALS
 318    DelayBetweenShots         = 1000                     ; time between shots, msec
 319    ClipSize                  = 0                                ; how many shots in a Clip (0 == infinite)
 320    ClipReloadTime            = 0                          ; how long to reload a Clip, msec
 321    WeaponBonus               = PLAYER_UPGRADE DAMAGE 125%    ; APBullets
 322    ProjectileCollidesWith    = STRUCTURES WALLS 
 323  End
 324  
 325  ;------------------------------------------------------------------------------
 326  ; end new "shell based" tank weapons
 327  ;------------------------------------------------------------------------------
 328  ;------------------------------------------------------------------------------
 329  ;------------------------------------------------------------------------------
 330  
 331  ;------------------------------------------------------------------------------
 332  Weapon CrusaderMachineGun
 333    PrimaryDamage = 10.0
 334    PrimaryDamageRadius = 25.0
 335    AttackRange = 150.0
 336    DamageType = SMALL_ARMS
 337    DeathType = NORMAL
 338    WeaponSpeed = 600         ; dist/sec 
 339    ProjectileObject = NONE
 340    FireFX = WeaponFX_GenericTankGun
 341    FireSound = GenericMachineGunFire
 342    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 343    DelayBetweenShots = 200               ; time between shots, msec
 344    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 345    ClipReloadTime = 0              ; how long to reload a Clip, msec
 346  End
 347  
 348  ;-------------------------------------------------------------------------------
 349  Weapon TunnelNetworkGun
 350    PrimaryDamage = 15.0 ;10.0
 351    PrimaryDamageRadius = 0.0
 352    AttackRange = 175.0
 353    DamageType = SMALL_ARMS
 354    DeathType = NORMAL
 355    WeaponSpeed = 600         ; dist/sec 
 356    ProjectileObject = NONE
 357    FireFX = WeaponFX_TechnicalGunFire
 358    FireSound =   HumveeWeapon
 359    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 360    DelayBetweenShots = 250         ; time between shots, msec
 361    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 362    ClipReloadTime = 0              ; how long to reload a Clip, msec
 363  End
 364  
 365  
 366  ;------------------------------------------------------------------------------
 367  Weapon HumveeGun
 368    PrimaryDamage = 8.0
 369    PrimaryDamageRadius = 0.0
 370    AttackRange = 150.0
 371    DamageType = COMANCHE_VULCAN  
 372    DeathType = NORMAL
 373    WeaponSpeed = 600         ; dist/sec 
 374    ProjectileObject = NONE
 375    FireFX = WeaponFX_TechnicalGunFire
 376    VeterancyFireFX  = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 377    FireSound = HumveeWeapon
 378    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 379    DelayBetweenShots = 200         ; time between shots, msec
 380    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 381    ClipReloadTime = 0              ; how long to reload a Clip, msec
 382  End
 383  
 384  ;------------------------------------------------------------------------------
 385  Weapon HumveeMissileWeapon
 386    PrimaryDamage = 30.0            
 387    PrimaryDamageRadius = 5.0      
 388    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 389    AttackRange = 150.0
 390    DamageType = EXPLOSION          ; ignored for projectile weapons
 391    DeathType = EXPLODED
 392    WeaponSpeed = 600               ; ignored for projectile weapons
 393    ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
 394    ProjectileObject = HumveeMissile
 395    ProjectileExhaust = TowMissileExhaust
 396    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 397    DelayBetweenShots = 1000  ; time between shots, msec
 398    ClipSize = 1            ; how many shots in a Clip (0 == infinite) ; You have to have a clip size as a missile weapon
 399    ClipReloadTime = 2000    ; how long to reload a Clip, msec
 400    AutoReloadsClip = Yes 
 401    FireSound = HumveeWeaponTOW
 402    ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
 403    AntiAirborneVehicle         = No
 404    AntiAirborneInfantry        = No
 405    AntiGround = Yes
 406  
 407    ; note, these only apply to units that aren't the explicit target 
 408    ; (ie, units that just happen to "get in the way"... projectiles
 409    ; always collide with the Designated Target, regardless of these flags
 410    ProjectileCollidesWith = STRUCTURES
 411  End
 412  
 413  ;------------------------------------------------------------------------------
 414  Weapon HumveeMissileWeaponAir
 415    PrimaryDamage = 50.0            
 416    PrimaryDamageRadius = 5.0      
 417    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 418    AttackRange = 320.0
 419    DamageType = EXPLOSION          ; ignored for projectile weapons
 420    DeathType = EXPLODED
 421    WeaponSpeed = 600               ; ignored for projectile weapons
 422    ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
 423    ProjectileObject            = PatriotMissile
 424    ProjectileExhaust = MissileExhaust
 425    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 426    DelayBetweenShots = 1000  ; time between shots, msec
 427    ClipSize = 1            ; how many shots in a Clip (0 == infinite) ; You have to have a clip size as a missile weapon
 428    ClipReloadTime = 2000    ; how long to reload a Clip, msec
 429    AutoReloadsClip = Yes 
 430    FireSound = HumveeWeaponTOW
 431    ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
 432    AntiAirborneVehicle         = Yes
 433    AntiAirborneInfantry        = No
 434    AntiGround = No
 435  
 436    ; note, these only apply to units that aren't the explicit target 
 437    ; (ie, units that just happen to "get in the way"... projectiles
 438    ; always collide with the Designated Target, regardless of these flags
 439    ProjectileCollidesWith = STRUCTURES
 440  End
 441  
 442  ;------------------------------------------------------------------------------
 443  Weapon RangerAdvancedCombatRifle
 444    PrimaryDamage           = 5.0
 445    PrimaryDamageRadius     = 0.0       ; 0 primary radius means "hits only intended victim"
 446    AttackRange             = 100.0
 447    DamageType              = SMALL_ARMS
 448    DeathType               = NORMAL
 449    WeaponSpeed             = 999999.0          ; dist/sec (huge value == effectively instant)
 450    ProjectileObject        = NONE
 451    FireFX                  = WeaponFX_GenericMachineGunFire
 452    VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 453    FireSound               = RangerWeapon
 454    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
 455    DelayBetweenShots       = 100              ; time between shots, msec
 456    ClipSize                = 3                    ; how many shots in a Clip (0 == infinite)
 457    ClipReloadTime          = 700              ; how long to reload a Clip, msec
 458    WeaponBonus             = DRONE_SPOTTING RATE_OF_FIRE 200%
 459    WeaponBonus             = DRONE_SPOTTING RANGE        200%
 460    WeaponBonus             = DRONE_SPOTTING DAMAGE       200%
 461  End
 462  ;------------------------------------------------------------------------------
 463  Weapon CINE_RangerAdvancedCombatRifle
 464    PrimaryDamage           = 5.0
 465    PrimaryDamageRadius     = 0.0       ; 0 primary radius means "hits only intended victim"
 466    AttackRange             = 999999.0
 467    DamageType              = SMALL_ARMS
 468    DeathType               = NORMAL
 469    WeaponSpeed             = 999999.0          ; dist/sec (huge value == effectively instant)
 470    ProjectileObject        = NONE
 471    FireFX                  = WeaponFX_GenericMachineGunFire
 472    VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 473    FireSound               = RangerWeapon
 474    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
 475    DelayBetweenShots       = 100              ; time between shots, msec
 476    ClipSize                = 3                    ; how many shots in a Clip (0 == infinite)
 477    ClipReloadTime          = 700              ; how long to reload a Clip, msec
 478    WeaponBonus             = DRONE_SPOTTING RATE_OF_FIRE 200%
 479    WeaponBonus             = DRONE_SPOTTING RANGE        200% 
 480    WeaponBonus             = DRONE_SPOTTING DAMAGE       200% 
 481  End
 482  
 483  ;------------------------------------------------------------------------------
 484  Weapon MissileDefenderMissileWeapon
 485    PrimaryDamage               = 40.0            
 486    PrimaryDamageRadius         = 5.0     
 487    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 488    AttackRange                 = 175.0
 489    DamageType                  = INFANTRY_MISSILE
 490    DeathType                   = NORMAL
 491    WeaponSpeed                 = 600               
 492    ProjectileObject            = MissileDefenderMissile
 493    ProjectileExhaust           = MissileDefenderMissileExhaust
 494    VeterancyProjectileExhaust  = HEROIC HeroicMissileDefenderMissileExhaust
 495    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
 496    FireFX                      = FX_BuggyMissileIgnition
 497    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
 498    ScatterRadius               = 0       ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
 499    DelayBetweenShots           = 1000  ; time between shots, msec
 500    ClipSize                    = 0            ; how many shots in a Clip (0 == infinite)
 501    ClipReloadTime              = 0    ; how long to reload a Clip, msec
 502    AutoReloadsClip             = Yes 
 503    FireSound                   = MissileDefenderWeapon
 504    WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125%
 505    AntiAirborneVehicle         = Yes
 506    AntiAirborneInfantry        = Yes
 507    ProjectileCollidesWith      = STRUCTURES
 508  End
 509  
 510  ;------------------------------------------------------------------------------
 511  Weapon MissileDefenderLaserGuidedMissileWeapon
 512    PrimaryDamage = 40.0            
 513    PrimaryDamageRadius = 5.0       
 514    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 515    AttackRange = 300.0     ;Extending this range, allows the special ability to work better.
 516    DamageType = ARMOR_PIERCING     
 517    DeathType = NORMAL
 518    WeaponSpeed = 600               
 519    ProjectileObject = MissileDefenderMissile
 520    ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
 521    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 522    ScatterRadius = 0       ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
 523    DelayBetweenShots = 500 ; time between shots, msec
 524    ClipSize = 0            ; how many shots in a Clip (0 == infinite)
 525    ClipReloadTime = 0    ; how long to reload a Clip, msec
 526    AutoReloadsClip = Yes 
 527    FireSound = MissileDefenderWeapon
 528    WeaponBonus = PLAYER_UPGRADE DAMAGE 125%
 529    AntiAirborneVehicle = Yes
 530    AntiAirborneInfantry = Yes
 531  
 532    ; note, these only apply to units that aren't the explicit target 
 533    ; (ie, units that just happen to "get in the way"... projectiles
 534    ; always collide with the Designated Target, regardless of these flags
 535    ProjectileCollidesWith = STRUCTURES
 536  End
 537  
 538  ;------------------------------------------------------------------------------
 539  Weapon GLAJarmenKellRifle
 540    PrimaryDamage = 180.0
 541    PrimaryDamageRadius = 0.0
 542    AttackRange = 225.0
 543    DamageType = SNIPER
 544    DeathType = NORMAL
 545    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 546    ProjectileObject = NONE ;JarmenKellSniperShell
 547    FireFX = WeaponFX_GenericMachineGunFire
 548    FireSound = HeroGLAWeapon ;JarmenKellWeapon
 549    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 550    DelayBetweenShots = 1000               ; time between shots, msec
 551    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 552    ClipReloadTime = 0              ; how long to reload a Clip, msec
 553    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
 554    ;AllowAttackGarrisonedBldgs = Yes
 555  End
 556  
 557  ;------------------------------------------------------------------------------
 558  Weapon CINE_GLAJarmenKellRifle
 559    PrimaryDamage = 180.0
 560    PrimaryDamageRadius = 0.0
 561    AttackRange = 999999.0
 562    DamageType = SNIPER
 563    DeathType = NORMAL
 564    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 565    ProjectileObject = NONE
 566    FireFX = WeaponFX_GenericMachineGunFire
 567    FireSound = JarmenKellWeapon
 568    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 569    DelayBetweenShots = 1000               ; time between shots, msec
 570    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 571    ClipReloadTime = 0              ; how long to reload a Clip, msec
 572    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
 573  End
 574  
 575  ;------------------------------------------------------------------------------
 576  Weapon CINE_USAPathfinderSniperRifle
 577    PrimaryDamage = 100.0
 578    PrimaryDamageRadius = 0.0
 579    AttackRange = 999999.0
 580    DamageType = FLESHY_SNIPER
 581    DeathType = NORMAL
 582    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 583    ProjectileObject = NONE
 584    FireFX = WeaponFX_GenericMachineGunFire                   ; so the ground lighting effects do not give away position while stealthed
 585    FireSound = PathfinderWeapon
 586    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 587    DelayBetweenShots = 2000               ; time between shots, msec
 588    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 589    ClipReloadTime = 0              ; how long to reload a Clip, msec
 590    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
 591  End
 592  ;------------------------------------------------------------------------------
 593  Weapon USAPathfinderSniperRifle
 594    PrimaryDamage = 100.0
 595    PrimaryDamageRadius = 0.0
 596    AttackRange = 300.0
 597    DamageType = FLESHY_SNIPER
 598    DeathType = NORMAL
 599    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 600    ProjectileObject = NONE
 601    FireFX = WeaponFX_GenericMachineGunFire                   ; so the ground lighting effects do not give away position while stealthed
 602    FireSound = PathfinderWeapon
 603    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 604    DelayBetweenShots = 2000               ; time between shots, msec
 605    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 606    ClipReloadTime = 0              ; how long to reload a Clip, msec
 607    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
 608  End
 609  
 610  ;------------------------------------------------------------------------------
 611  Weapon GLAJarmenKellVehiclePilotSniperRifle
 612    PrimaryDamage = 1.0
 613    PrimaryDamageRadius = 0.0
 614    AttackRange = 225.0
 615    DamageType = KILL_PILOT
 616    DeathType = NORMAL
 617    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 618    ProjectileObject = NONE
 619    FireFX                = WeaponFX_GenericMachineGunFire
 620    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 621    FireSound = JarmenKellWeaponSnipe
 622    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 623    DelayBetweenShots = 0           ; time between shots, msec
 624    ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
 625    ClipReloadTime = 20000          ; how long to reload a Clip, msec
 626    AutoReloadsClip = Yes
 627  End
 628  
 629  ;------------------------------------------------------------------------------
 630  Weapon ColonelBurtonSniperRifleWeapon
 631    PrimaryDamage         = 40.0
 632    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 633    AttackRange           = 125.0
 634    DamageType            = SMALL_ARMS
 635    DeathType             = NORMAL
 636    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 637    ProjectileObject      = NONE
 638    FireFX                = WeaponFX_GenericMachineGunFire
 639    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 640    FireSound             = ColonelBurtonWeapon 
 641    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 642    DelayBetweenShots     = 100        ; time between shots, msec
 643    ClipSize              = 3                    ; how many shots in a Clip (0 == infinite)
 644    ClipReloadTime        = 500              ; how long to reload a Clip, msec
 645  End
 646  
 647  ;------------------------------------------------------------------------------
 648  Weapon ColonelBurtonKnifeWeapon
 649    LeechRangeWeapon = Yes
 650    PrimaryDamage         = 10000.0         ; always kills target in one hit
 651    PrimaryDamageRadius   = 0.0             ; 0 primary radius means "hits only intended victim"
 652    AttackRange           = 3.0
 653    DamageType            = MELEE
 654    DeathType             = NORMAL
 655    WeaponSpeed           = 999999.0        ; dist/sec (huge value == effectively instant)
 656    ProjectileObject      = NONE
 657    FireFX                = NONE;!
 658    FireSound             = HeroUSAKnifeAttack
 659    DelayBetweenShots     = 0            ; time between shots, msec
 660    ClipSize              = 1               ; how many shots in a Clip (0 == infinite)
 661    ClipReloadTime        = 1367               ; how long to reload a Clip, msec
 662    PreAttackDelay        = 833             ; 833 is natural time of the stabbing animation.
 663    PreAttackType         = PER_ATTACK ; Do the delay each time we attack a new target
 664  End
 665  
 666  ;------------------------------------------------------------------------------
 667  Weapon GLARebelMachineGun
 668    PrimaryDamage         = 5.0
 669    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 670    AttackRange           = 100.0
 671    DamageType            = SMALL_ARMS
 672    DeathType             = NORMAL
 673    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 674    ProjectileObject      = NONE
 675    FireFX                = WeaponFX_GenericMachineGunFire
 676    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers ; Heroic rebels get different FireFX
 677    FireSound             = RebelWeapon
 678    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 679    DelayBetweenShots     = 100               ; time between shots, msec
 680    ClipSize              = 3                    ; how many shots in a Clip (0 == infinite)
 681    ClipReloadTime        = 700              ; how long to reload a Clip, msec
 682    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
 683  End
 684  
 685  ;------------------------------------------------------------------------------
 686  ;*********************** Cinematic Only ***************************************
 687  Weapon CINE_GLARebelMachineGun
 688    PrimaryDamage         = 5.0
 689    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 690    AttackRange           = 250.0
 691    DamageType            = SMALL_ARMS
 692    DeathType             = NORMAL
 693    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 694    ProjectileObject      = NONE
 695    FireFX                = WeaponFX_GenericMachineGunFire
 696    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers ; Heroic rebels get different FireFX
 697    FireSound             = RebelWeapon
 698    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 699    DelayBetweenShots     = 100               ; time between shots, msec
 700    ClipSize              = 3                    ; how many shots in a Clip (0 == infinite)
 701    ClipReloadTime        = 700              ; how long to reload a Clip, msec
 702    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
 703  End
 704  
 705  ;------------------------------------------------------------------------------
 706  Weapon GLARebelTranqDartsWeapon
 707    PrimaryDamage         = 50.0
 708    PrimaryDamageRadius   = 0.0       
 709    AttackRange           = 70.0
 710    DamageType            = SURRENDER
 711    DeathType             = NORMAL
 712    WeaponSpeed           = 999999.0 
 713    ProjectileObject      = NONE
 714    FireFX                = WeaponFX_GenericMachineGunFire                        ; @todo need custom FX
 715    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers   ; @todo need custom FX
 716    FireSound             = RebelWeaponTranquilizer
 717    DelayBetweenShots     = 2000
 718    ClipSize              = 0
 719    ClipReloadTime        = 0
 720  End
 721  
 722  ;------------------------------------------------------------------------------
 723  Weapon RedguardMachineGun
 724    PrimaryDamage         = 15.0
 725    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 726    AttackRange           = 100.0
 727    DamageType            = SMALL_ARMS
 728    DeathType             = NORMAL
 729    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 730    ProjectileObject      = NONE
 731    FireFX                = WeaponFX_GenericMachineGunFire
 732    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 733    FireSound             = RedGuardWeapon
 734    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 735    DelayBetweenShots     = 1000               ; time between shots, msec
 736    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
 737    ClipReloadTime        = 0              ; how long to reload a Clip, msec
 738  End
 739  
 740  ;------------------------------------------------------------------------------
 741  Weapon ChinaOfficerMachineGun
 742    PrimaryDamage = 10.0
 743    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
 744    AttackRange = 100.0
 745    DamageType = SMALL_ARMS
 746    DeathType = NORMAL
 747    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 748    ProjectileObject = NONE
 749    FireFX                = WeaponFX_GenericMachineGunFire
 750    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 751    FireSound = RedGuardWeapon
 752    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 753    DelayBetweenShots = 1000               ; time between shots, msec
 754    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 755    ClipReloadTime = 0              ; how long to reload a Clip, msec
 756    PreAttackDelay = 1538           ; 1538 is natural time of drawing gun animation
 757    PreAttackType = PER_ATTACK ; Do the delay each time we attack a new target
 758  End
 759  
 760  ;------------------------------------------------------------------------------
 761  Weapon AmericaOfficerMachineGun
 762    PrimaryDamage = 10.0
 763    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
 764    AttackRange = 100.0
 765    DamageType = SMALL_ARMS
 766    DeathType = NORMAL
 767    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 768    ProjectileObject = NONE
 769    FireFX                = WeaponFX_GenericMachineGunFire
 770    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 771    FireSound = RedGuardWeapon
 772    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 773    DelayBetweenShots = 1000               ; time between shots, msec
 774    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 775    ClipReloadTime = 0              ; how long to reload a Clip, msec
 776    PreAttackDelay = 1538           ; 1538 is natural time of drawing gun animation
 777    PreAttackType = PER_ATTACK ; Do the delay each time we attack a new target
 778  End
 779  
 780  ;------------------------------------------------------------------------------
 781  Weapon RedguardStunBulletsMachineGun
 782    PrimaryDamage = 50.0
 783    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
 784    AttackRange = 80.0
 785    DamageType = SURRENDER
 786    DeathType = NORMAL
 787    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 788    ProjectileObject = NONE
 789    FireFX                = WeaponFX_GenericMachineGunFire
 790    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 791    FireSound = RedGuardWeapon
 792    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 793    DelayBetweenShots = 2000               ; time between shots, msec
 794    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 795    ClipReloadTime = 0              ; how long to reload a Clip, msec
 796  End
 797  
 798  ;------------------------------------------------------------------------------
 799  Weapon RedguardBayonet
 800    LeechRangeWeapon = Yes
 801    PrimaryDamage = 10000.0         ; always kills target in one hit
 802    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
 803    AttackRange = 3.0
 804    DamageType = MELEE
 805    DeathType = NORMAL
 806    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 807    ProjectileObject = NONE
 808    FireFX = WeaponFX_GenericMachineGunFire
 809    FireSound = HeroUSAKnifeAttack
 810    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 811    DelayBetweenShots = 0 ;1900        ; time between shots, msec
 812    ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
 813    ClipReloadTime = 1900              ; how long to reload a Clip, msec
 814    PreAttackDelay = 1400
 815    PreAttackType = PER_ATTACK ; Do the delay each time we attack a new target
 816  End
 817  
 818  ;------------------------------------------------------------------------------
 819  Weapon GattlingTankGun
 820    PrimaryDamage         = 20.0
 821    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 822    AttackRange           = 175.0
 823    MinTargetPitch        = -15                         ; we may not target anything outside of this pitch range
 824    MaxTargetPitch        = 15                          ; ditto
 825    DamageType            = Gattling
 826    DeathType             = NORMAL
 827    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 828    ProjectileObject      = NONE
 829    FireFX                = WeaponFX_GattlingTankMachineGunFire
 830    VeterancyFireFX       = HEROIC WeaponFX_GattlingTankMachineGunFireWithRedTracers
 831    FireSound             = GattlingTankWeapon
 832    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 833    DelayBetweenShots     = 400               ; time between shots, msec
 834    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
 835    ClipReloadTime        = 0              ; how long to reload a Clip, msec
 836    ContinuousFireOne     = 3 ; How many shots at the same target constitute "Continuous Fire"
 837    ContinuousFireTwo     = 6 ; How many shots at the same target constitute "Continuous Fire Two"
 838    ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
 839    WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
 840    WeaponBonus           = CONTINUOUS_FIRE_FAST RATE_OF_FIRE 300% ; This is not cumulative, so with Delay of 40, and values of 2 and 4 for these bonuses, you shoot at (40, 20, 10)
 841    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
 842    AntiAirborneVehicle   = No
 843    AntiAirborneInfantry  = No
 844    AntiGround = Yes
 845  End
 846  
 847  ;------------------------------------------------------------------------------
 848  Weapon GattlingTankGunAir
 849    PrimaryDamage         = 12.0
 850    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 851    AttackRange           = 350.0
 852    ;MinTargetPitch        = -15                         ; we may not target anything outside of this pitch range
 853    ;MaxTargetPitch        = 15                          ; ditto
 854    DamageType            = SMALL_ARMS
 855    DeathType             = NORMAL
 856    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 857    ProjectileObject      = NONE
 858    FireFX                = WeaponFX_GattlingTankMachineGunFire
 859    VeterancyFireFX       = HEROIC WeaponFX_GattlingTankMachineGunFireWithRedTracers
 860    FireSound             = GattlingTankWeapon
 861    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 862    DelayBetweenShots     = 400               ; time between shots, msec
 863    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
 864    ClipReloadTime        = 0              ; how long to reload a Clip, msec
 865    ContinuousFireOne     = 3 ; How many shots at the same target constitute "Continuous Fire"
 866    ContinuousFireTwo     = 6 ; How many shots at the same target constitute "Continuous Fire Two"
 867    ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
 868    WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
 869    WeaponBonus           = CONTINUOUS_FIRE_FAST RATE_OF_FIRE 300% ; This is not cumulative, so with Delay of 40, and values of 2 and 4 for these bonuses, you shoot at (40, 20, 10)
 870    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
 871    AntiAirborneVehicle   = Yes
 872    AntiAirborneInfantry  = Yes
 873    AntiGround            = No
 874  End
 875  
 876  ;------------------------------------------------------------------------------
 877  Weapon GattlingBuildingGun
 878    PrimaryDamage         = 10.0 ;5.0
 879    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 880    AttackRange           = 225.0
 881    DamageType            = Gattling
 882    DeathType             = NORMAL
 883    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 884    ProjectileObject      = NONE
 885    FireFX                = WeaponFX_GattlingCannonMachineGunFire
 886    VeterancyFireFX       = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
 887    FireSound             = GattlingCannonWeapon
 888    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 889    DelayBetweenShots     = 250               ; time between shots, msec
 890    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
 891    ClipReloadTime        = 0              ; how long to reload a Clip, msec
 892    ContinuousFireOne     = 1 ; How many shots at the same target constitute "Continuous Fire"
 893    ContinuousFireTwo     = 5 ; How many shots at the same target constitute "Continuous Fire Two"
 894    ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
 895    WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
 896    WeaponBonus           = CONTINUOUS_FIRE_FAST RATE_OF_FIRE 300% ; This is not cumulative, so with Delay of 40, and values of 2 and 4 for these  bonuses, you shoot at (40, 20, 10)
 897    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
 898    AntiAirborneVehicle   = No
 899    AntiAirborneInfantry  = No
 900    AntiSmallMissile      = No
 901    AntiBallisticMissile  = No
 902    AntiGround            = Yes
 903  End
 904  
 905  ;------------------------------------------------------------------------------
 906  Weapon GattlingBuildingGunAir
 907    PrimaryDamage         = 5.0
 908    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
 909    AttackRange           = 400.0
 910    DamageType            = SMALL_ARMS
 911    DeathType             = NORMAL
 912    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
 913    ProjectileObject      = NONE
 914    FireFX                = WeaponFX_GattlingCannonMachineGunFire
 915    VeterancyFireFX       = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
 916    FireSound             = GattlingCannonWeapon
 917    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
 918    DelayBetweenShots     = 250               ; time between shots, msec
 919    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
 920    ClipReloadTime        = 0              ; how long to reload a Clip, msec
 921    ContinuousFireOne     = 1 ; How many shots at the same target constitute "Continuous Fire"
 922    ContinuousFireTwo     = 5 ; How many shots at the same target constitute "Continuous Fire Two"
 923    ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
 924    WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
 925    WeaponBonus           = CONTINUOUS_FIRE_FAST RATE_OF_FIRE 300% ; This is not cumulative, so with Delay of 40, and values of 2 and 4 for these bonuses, you shoot at (40, 20, 10)
 926    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
 927    AntiAirborneVehicle   = Yes
 928    AntiAirborneInfantry  = Yes
 929    AntiSmallMissile      = No
 930    AntiBallisticMissile  = Yes
 931    AntiGround            = No
 932  End
 933  
 934  ;------------------------------------------------------------------------------
 935  Weapon WatchTowerMachineGun
 936    PrimaryDamage = 10.0
 937    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
 938    AttackRange = 100.0
 939    DamageType = SMALL_ARMS
 940    DeathType = NORMAL
 941    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 942    ProjectileObject = NONE
 943    FireFX                = WeaponFX_GenericMachineGunFire
 944    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 945    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 946    DelayBetweenShots = 500               ; time between shots, msec
 947    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 948    ClipReloadTime = 0              ; how long to reload a Clip, msec
 949  End
 950  
 951  ;------------------------------------------------------------------------------
 952  Weapon CommandoMachineGun
 953    PrimaryDamage = 10.0
 954    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
 955    AttackRange = 80.0
 956    DamageType = SMALL_ARMS
 957    DeathType = NORMAL
 958    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
 959    ProjectileObject = NONE
 960    FireFX                = WeaponFX_GenericMachineGunFire
 961    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
 962    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
 963    DelayBetweenShots = 500               ; time between shots, msec
 964    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
 965    ClipReloadTime = 0              ; how long to reload a Clip, msec
 966  End
 967  
 968  ;------------------------------------------------------------------------------
 969  Weapon Comanche20mmCannonWeapon
 970    PrimaryDamage               = 6.0
 971    PrimaryDamageRadius         = 0.0       ; 0 primary radius means "hits only intended victim"
 972    AttackRange                 = 200.0      
 973    MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
 974    DamageType                  = COMANCHE_VULCAN  ;used only for this weapon so stinger sites don't lose their guys but otherwise acts just like Small_Arms
 975    DeathType                   = NORMAL
 976    WeaponSpeed                 = 999999.0          ; dist/sec (huge value == effectively instant)
 977    ProjectileObject            = NONE
 978    FireSound                   = ComancheWeaponMachineGun
 979    FireFX                      = WeaponFX_Comanche20mmCannonFire
 980    VeterancyFireFX             = HEROIC WeaponFX_HeroicComanche20mmCannonFire
 981    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
 982    DelayBetweenShots           = 100         ; time between shots, msec
 983    ClipSize                    = 0                    ; how many shots in a Clip (0 == infinite)
 984    ClipReloadTime              = 0              ; how long to reload a Clip, msec
 985    AntiAirborneVehicle         = No
 986    AntiAirborneInfantry        = Yes
 987  End
 988  
 989  ;------------------------------------------------------------------------------
 990  Weapon ComancheAntiTankMissileWeapon
 991    PrimaryDamage               = 50            
 992    PrimaryDamageRadius         = 5.0      
 993    SecondaryDamage             = 30.0          
 994    SecondaryDamageRadius       = 25.0    
 995    ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
 996    AttackRange                 = 200.0
 997    MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
 998    DamageType                  = JET_MISSILES  ;not so good against base defenses and some other units.  
 999    DeathType                   = EXPLODED
1000    WeaponSpeed                 = 99999
1001    ProjectileObject            = ComancheAntiTankMissile
1002    ProjectileExhaust           = MissileExhaust
1003    VeterancyProjectileExhaust  = HEROIC HeroicComancheMissileExhaust
1004    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1005    DelayBetweenShots           = 500            ; time between shots, msec
1006    ClipSize                    = 4              ; how many shots in a Clip (0 == infinite)
1007    AutoReloadsClip             = Yes
1008    ClipReloadTime              = 15000                      ; how long to reload a Clip, msec
1009    AutoReloadWhenIdle          = 15100    ; If I haven't fired in this long, I will reload on my own (rather than only after the last one is fired)
1010    FireSound                   = ComancheMissileWeapon
1011    FireFX                      = None
1012    ProjectileDetonationFX      = WeaponFX_ComancheAntiTankMissileDetonation
1013    ProjectileCollidesWith      = STRUCTURES
1014    AntiAirborneVehicle         = No
1015    AntiAirborneInfantry        = No
1016    ShowsAmmoPips               = Yes
1017  End
1018  
1019  ;------------------------------------------------------------------------------
1020  Weapon ComancheRocketPodWeapon
1021    PrimaryDamage           = 30.0            
1022    PrimaryDamageRadius     = 5.0      
1023    SecondaryDamage         = 10.0          
1024    SecondaryDamageRadius   = 40.0   
1025    ScatterRadius           = 0;changed to zero, unless you want to soften the results of the table below
1026  
1027    ; @todo srj -- need better targets; these are copied from Scud Storm
1028    ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
1029    ; These specific points are an even distribution simulating a 150 ScatterRadius.
1030    ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
1031    ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.
1032  
1033    ScatterTargetScalar = 50; replaces the ScatterRadius, above, for scaling this table, below
1034    ScatterTarget           = X: 0.000 Y: 0.133
1035    ScatterTarget           = X: 0.133 Y:-0.200
1036    ScatterTarget           = X:-0.067 Y: 0.667
1037    ScatterTarget           = X: 0.300 Y: 0.300
1038    ScatterTarget           = X: 0.767 Y: 0.000       
1039    ScatterTarget           = X: 0.500 Y:-0.567        
1040    ScatterTarget           = X:-0.333 Y:-0.800        
1041    ScatterTarget           = X:-0.600 Y:-0.1333        
1042    ScatterTarget           = X:-0.567 Y: 0.433        
1043    ScatterTarget           = X: 0.000 Y: 0.133
1044    ScatterTarget           = X: 0.133 Y:-0.200
1045    ScatterTarget           = X:-0.067 Y: 0.667
1046    ScatterTarget           = X: 0.300 Y: 0.300
1047    ScatterTarget           = X: 0.767 Y: 0.000       
1048    ScatterTarget           = X: 0.500 Y:-0.567        
1049    ScatterTarget           = X:-0.333 Y:-0.800        
1050    ScatterTarget           = X:-0.600 Y:-0.1333        
1051    ScatterTarget           = X:-0.567 Y: 0.433        
1052    ScatterTarget           = X: 0.000 Y: 0.133
1053    ScatterTarget           = X: 0.133 Y:-0.200
1054  
1055    ScatterRadiusVsInfantry = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1056    AttackRange             = 200.0
1057    MinimumAttackRange      = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
1058    DamageType              = EXPLOSION
1059    DeathType               = EXPLODED
1060    WeaponSpeed             = 99999
1061    ProjectileObject        = ComancheRocketPodRocket
1062    ProjectileExhaust       = MissileExhaust
1063    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
1064    DelayBetweenShots       = 200    ; time between shots, msec
1065    ClipSize                = 20              ; how many shots in a Clip (0 == infinite)
1066    AutoReloadsClip         = Yes
1067    ClipReloadTime          = 30000                      ; how long to reload a Clip, msec
1068    FireSound               = ComancheRocketPodWeaponSound
1069    FireFX                  = None
1070    ProjectileDetonationFX  = WeaponFX_ComancheRocketPodRocketDetonation
1071    ProjectileCollidesWith  = STRUCTURES
1072    AntiAirborneVehicle     = No
1073    AntiAirborneInfantry    = No
1074  End
1075  
1076  ;------------------------------------------------------------------------------
1077  Weapon ToxinShellWeapon ; No extra damage, just lays down a damage field
1078    PrimaryDamage = 0.0
1079    PrimaryDamageRadius = 1.0      
1080    AttackRange = 100.0
1081    DamageType = EXPLOSION 
1082    DeathType = EXPLODED
1083    WeaponSpeed = 99999.0
1084    ProjectileObject = NONE
1085    FireFX = WeaponFX_ToxinShellWeapon
1086    FireOCL = OCL_PoisonFieldSmall
1087    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1088    DelayBetweenShots = 0                   ; time between shots, msec
1089    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
1090    ClipReloadTime = 0                      ; how long to reload a Clip, msec
1091    AutoReloadsClip = No 
1092    AntiGround = Yes
1093    DamageDealtAtSelfPosition = Yes
1094  End
1095  
1096  ;------------------------------------------------------------------------------
1097  Weapon ToxinShellWeaponUpgraded ; No extra damage, just lays down a damage field
1098    PrimaryDamage = 0.0            
1099    PrimaryDamageRadius = 1.0      
1100    AttackRange = 100.0
1101    DamageType = EXPLOSION 
1102    DeathType = EXPLODED
1103    WeaponSpeed = 99999.0
1104    ProjectileObject = NONE
1105  ;  FireFX = WeaponFX_NapalmMissileDetonation
1106    FireOCL = OCL_PoisonFieldUpgradedSmall
1107    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1108    DelayBetweenShots = 0                   ; time between shots, msec
1109    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
1110    ClipReloadTime = 0                      ; how long to reload a Clip, msec
1111    AutoReloadsClip = No 
1112    AntiGround = Yes
1113    DamageDealtAtSelfPosition = Yes
1114  End
1115  
1116  ;------------------------------------------------------------------------------
1117  ; When a barrel explodes
1118  Weapon BarrelWeapon
1119    PrimaryDamage = 50.0
1120    PrimaryDamageRadius = 15.0
1121    SecondaryDamage = 30.0
1122    SecondaryDamageRadius = 30.0
1123    AttackRange = 200.0
1124    DamageType = EXPLOSION
1125    DeathType = EXPLODED
1126    WeaponSpeed = 600         ; dist/sec 
1127    ProjectileObject = NONE
1128    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1129    DelayBetweenShots = 0               ; time between shots, msec
1130    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
1131    ClipReloadTime = 0              ; how long to reload a Clip, msec
1132  End
1133  
1134  ;------------------------------------------------------------------------------
1135  ; When a TankerTruck explodes
1136  Weapon TankerTruckWeapon
1137    PrimaryDamage = 100.0
1138    PrimaryDamageRadius = 30.0
1139    SecondaryDamage = 30.0
1140    SecondaryDamageRadius = 65.0
1141    AttackRange = 200.0
1142    DamageType = EXPLOSION
1143    DeathType = EXPLODED
1144    WeaponSpeed = 600         ; dist/sec 
1145    ProjectileObject = NONE
1146    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1147    DelayBetweenShots = 0               ; time between shots, msec
1148    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
1149    ClipReloadTime = 0              ; how long to reload a Clip, msec
1150  End
1151  
1152  ;------------------------------------------------------------------------------
1153  Weapon A10ThunderboltVulcan
1154    PrimaryDamage         = 10.0
1155    PrimaryDamageRadius   = 4.0       ; 0 primary radius means "hits only intended victim"
1156    AttackRange           = 450.0
1157    DamageType            = SMALL_ARMS
1158    DeathType             = NORMAL
1159    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
1160    ProjectileObject      = NONE
1161    FireFX                = WeaponFX_Comanche20mmCannonFire
1162    FireSound             = GattlingCannonWeapon
1163    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
1164    DelayBetweenShots     = 60          ; time between shots, msec
1165    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
1166    ClipReloadTime        = 0              ; how long to reload a Clip, msec
1167  End
1168  
1169  ;------------------------------------------------------------------------------
1170  Weapon A10ThunderboltMissileWeapon
1171    PrimaryDamage         = 200.0      ;GS changed to what it was secretly doing pending review      
1172    PrimaryDamageRadius   = 50.0      
1173    AttackRange           = 350.0
1174    DamageType            = EXPLOSION
1175    DeathType             = EXPLODED
1176    WeaponSpeed           = 99999.0             
1177    ProjectileDetonationFX = FX_A10ThunderboltMissileExplosion
1178    RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES NOT_SIMILAR
1179    DelayBetweenShots     = 0      ; time between shots, msec
1180    ClipSize              = 1      ; how many shots in a Clip (0 == infinite)
1181    ClipReloadTime        = 20000  ; how long to reload a Clip, msec
1182    AutoReloadsClip       = No 
1183  End
1184  
1185  ;------------------------------------------------------------------------------
1186  Weapon NeutronMissileWeapon
1187    PrimaryDamage = 0               ; not used for this weapon (it's "special")            
1188    PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
1189    AttackRange = 99999             ; not used for this weapon (it's "special")
1190    DamageType = RADIATION          ; not used for this weapon (it's "special")
1191    DeathType = NORMAL
1192    WeaponSpeed = 99999             ; not used for this weapon (it's "special")
1193    ProjectileObject = NeutronMissile
1194    ProjectileExhaust = NeutronMissileExhaust
1195    FireFX = WeaponFX_NeutronMissile
1196    ProjectileDetonationFX = None   ; not used for this weapon (it's "special")
1197    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1198    DelayBetweenShots = 0           ; not used for this weapon (it's "special")
1199    ClipSize = 1                    ; not used for this weapon (it's "special")
1200    ClipReloadTime = 0              ; not used for this weapon (it's "special")
1201    AutoReloadsClip = No            ; not used for this weapon (it's "special")
1202  End
1203  
1204  ;-------------------------- Scud Storm ----------------------------------------
1205  ;------------------------------------------------------------------------------
1206  Weapon ScudStormWeapon
1207    PrimaryDamage = 0               ; not used for this weapon (it's "special")            
1208    PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
1209    AttackRange = 999999            ; not used for this weapon (it's "special")
1210    DamageType = EXPLOSION          ; not used for this weapon (it's "special")
1211    DeathType = EXPLODED
1212    WeaponSpeed = 99999             ; not used for this weapon (it's "special")
1213    ProjectileObject = ScudStormMissile
1214    ProjectileExhaust = ScudMissileExhaust
1215    ;FireFX = WeaponFX_ScudStormMissile
1216    FireSound = ScudStormLaunch
1217    ;ProjectileDetonationFX = ScudStormMissileDetonation
1218    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
1219    DelayBetweenShots = Min:100 Max:1000
1220    ClipSize = 9
1221    ClipReloadTime = 10000 ; give it time to sink into the ground          
1222    AutoReloadsClip = Yes
1223    ScatterRadius   = 0;changed to zero, unless you want to soften the results of the table below
1224  
1225    ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
1226    ; These specific points are an even distribution simulating a 150 ScatterRadius.
1227    ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
1228    ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.
1229  
1230    ScatterTargetScalar = 120; replaces the ScatterRadius, above, for scaling this table, below
1231    ScatterTarget = X: 0.000 Y: 0.133
1232    ScatterTarget = X: 0.133 Y:-0.200
1233    ScatterTarget = X:-0.067 Y: 0.667
1234    ScatterTarget = X: 0.300 Y: 0.300
1235    ScatterTarget = X: 0.767 Y: 0.000       
1236    ScatterTarget = X: 0.500 Y:-0.567        
1237    ScatterTarget = X:-0.333 Y:-0.800        
1238    ScatterTarget = X:-0.600 Y:-0.1333        
1239    ScatterTarget = X:-0.567 Y: 0.433        
1240  
1241    PreAttackDelay = 1500 ; Slight delay to sound the alarm
1242    PreAttackType = PER_CLIP ; Do the delay the first shot of each clip
1243    AcceptableAimDelta = 180 ; Don't need to turn at all.
1244  
1245    ; note, these only apply to units that aren't the explicit target 
1246    ; (ie, units that just happen to "get in the way"... projectiles
1247    ; always collide with the Designated Target, regardless of these flags
1248    ProjectileCollidesWith = STRUCTURES
1249  End
1250  
1251  ;------------------------------------------------------------------------------
1252  Weapon ScudStormDamageWeapon
1253    PrimaryDamage = 500.0
1254    PrimaryDamageRadius = 50.0
1255    SecondaryDamage = 150.0 ;50.0
1256    SecondaryDamageRadius = 200.0 
1257    AttackRange = 200.0
1258    DamageType = EXPLOSION
1259    DeathType = EXPLODED
1260    WeaponSpeed = 600         ; dist/sec 
1261    FireFX = ScudStormMissileDetonation
1262    FireOCL = OCL_PoisonFieldLarge  ; So this weapon will do normal damage, and create this object
1263    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
1264    DelayBetweenShots = 0               ; time between shots, msec
1265    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
1266    ClipReloadTime = 0              ; how long to reload a Clip, msec
1267  End
1268  
1269  ;------------------------------------------------------------------------------
1270  Weapon ScudStormDamageWeaponUpgraded
1271    PrimaryDamage = 500.0
1272    PrimaryDamageRadius = 50.0
1273    SecondaryDamage = 150.0
1274    SecondaryDamageRadius = 200.0
1275    AttackRange = 200.0
1276    DamageType = EXPLOSION
1277    DeathType = EXPLODED
1278    WeaponSpeed = 600         ; dist/sec 
1279    FireFX = ScudStormMissileDetonationUpgraded
1280    FireOCL = OCL_PoisonFieldUpgradedLarge  ; So this weapon will do normal damage, and create this object
1281    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
1282    DelayBetweenShots = 0               ; time between shots, msec
1283    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
1284    ClipReloadTime = 0              ; how long to reload a Clip, msec
1285  End
1286  
1287  ;------------------------------------------------------------------------------
1288  Weapon ScudStormDeath
1289    FireFX = WeaponFX_BombTruckHighExplosiveBioBombDetonation
1290    FireOCL = OCL_PoisonFieldMedium
1291    FireSound = NoSound
1292  End
1293  
1294  ;------------------------------------------------------------------------------
1295  Weapon ScudStormDeathUpgraded
1296    FireFX = WeaponFX_BombTruckHighExplosiveAnthraxBombDetonation
1297    FireOCL = OCL_PoisonFieldUpgradedMedium
1298    FireSound = NoSound
1299  End
1300  
1301  
1302  ;------------------------------------------------------------------------------
1303  Weapon AuroraBombWeapon
1304    PrimaryDamage           = 400.0            
1305    PrimaryDamageRadius     = 20.0      
1306    AttackRange             = 300.0       ; this needs to be pretty high, since the Aurora moves so fast
1307    AcceptableAimDelta      = 45          ; we don't really need to be aimed directly at the target.
1308    DamageType              = AURORA_BOMB
1309    DeathType               = EXPLODED
1310    WeaponSpeed             = 99999
1311    ProjectileObject        = AuroraBomb
1312    FireFX                  = FX_AuroraBombLaunch
1313    ProjectileDetonationFX  = FX_AuroraBombDetonate
1314    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
1315    ClipSize                = 1                        ; how many shots in a Clip (0 == infinite)
1316    ClipReloadTime          = 5000              ; how long to reload a Clip, msec
1317    AutoReloadsClip         = RETURN_TO_BASE                 ; must return to base to reload this weapon
1318    ShowsAmmoPips           = Yes
1319  
1320    ; note, these only apply to units that aren't the explicit target 
1321    ; (ie, units that just happen to "get in the way"... projectiles
1322    ; always collide with the Designated Target, regardless of these flags
1323    ProjectileCollidesWith  = STRUCTURES
1324  End
1325  
1326  ;------------------------------------------------------------------------------
1327  Weapon RaptorJetMissileWeapon
1328    PrimaryDamage               = 100.0            
1329    PrimaryDamageRadius         = 5.0
1330    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1331    AttackRange                 = 320 ;400.0
1332    MinimumAttackRange          = 100.0
1333    AcceptableAimDelta          = 30
1334    DamageType                  = JET_MISSILES
1335    DeathType                   = EXPLODED
1336    WeaponSpeed                 = 1000
1337    ProjectileObject            = RaptorJetMissile
1338    ProjectileExhaust           = MissileExhaust
1339    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1340    FireFX                      = None
1341    FireSound                   = RaptorJetMissileWeapon
1342    ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
1343    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
1344    DelayBetweenShots           = 150
1345    ClipSize                    = 4 
1346    ClipReloadTime              = 8000 
1347    AutoReloadsClip             = RETURN_TO_BASE 
1348    ProjectileCollidesWith      = STRUCTURES
1349    AntiAirborneVehicle         = Yes
1350    AntiAirborneInfantry        = No
1351    ShowsAmmoPips               = Yes
1352  End
1353  
1354  ;------------------------------------------------------------------------------
1355  Weapon RaptorJetLaserGuidedMissileWeapon
1356    PrimaryDamage               = 125.0            
1357    PrimaryDamageRadius         = 5.0
1358    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1359    AttackRange                 = 320.0
1360    MinimumAttackRange          = 100.0
1361    AcceptableAimDelta          = 30
1362    DamageType                  = JET_MISSILES
1363    DeathType                   = EXPLODED
1364    WeaponSpeed                 = 1000
1365    ProjectileObject            = RaptorJetMissile
1366    ProjectileExhaust           = MissileExhaust
1367    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1368    FireFX                      = None
1369    FireSound                   = RaptorJetMissileWeapon
1370    ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
1371    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
1372    DelayBetweenShots           = 150
1373    ClipSize                    = 4 
1374    ClipReloadTime              = 5000 ;8000
1375    AutoReloadsClip             = RETURN_TO_BASE 
1376    ProjectileCollidesWith      = STRUCTURES
1377    AntiAirborneVehicle         = Yes
1378    AntiAirborneInfantry        = No
1379    ShowsAmmoPips               = Yes
1380  End
1381  
1382  ;------------------------------------------------------------------------------
1383  Weapon StealthJetMissileWeapon
1384    PrimaryDamage               = 100.0            
1385    PrimaryDamageRadius         = 5.0      
1386    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1387    AttackRange                 = 220 ;320.0
1388    MinimumAttackRange          = 60.0 ; used to be 100.0, but that was too large for stealthjet/missile speed
1389    DamageType                  = STEALTHJET_MISSILES ;good against buildings, ok against everything else
1390    DeathType                   = EXPLODED
1391    WeaponSpeed                 = 1000
1392    ProjectileObject            = StealthJetMissile
1393    ProjectileExhaust           = MissileExhaust
1394    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1395    FireFX                      = None
1396    FireSound                   = StealthJetMissileWeapon
1397    ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
1398    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
1399    DelayBetweenShots           = 200                      ; time between shots, msec
1400    ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
1401    ClipReloadTime              = 8000                     ; how long to reload a Clip, msec
1402    AutoReloadsClip             = RETURN_TO_BASE           ; must return to base to reload this weapon
1403    ProjectileCollidesWith      = STRUCTURES
1404    AntiAirborneVehicle       = No
1405    AntiAirborneInfantry      = No
1406    ShowsAmmoPips             = Yes
1407  End
1408  
1409  ;------------------------------------------------------------------------------
1410  Weapon CINE_StealthJetMissileWeapon
1411    PrimaryDamage               = 100.0            
1412    PrimaryDamageRadius         = 5.0      
1413    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1414    AttackRange                 = 400
1415    MinimumAttackRange          = 60.0 ; used to be 100.0, but that was too large for stealthjet/missile speed
1416    DamageType                  = STEALTHJET_MISSILES ;good against buildings, ok against everything else
1417    DeathType                   = EXPLODED
1418    WeaponSpeed                 = 1000
1419    ProjectileObject            = StealthJetMissile
1420    ProjectileExhaust           = MissileExhaust
1421    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1422    FireFX                      = None
1423    FireSound                   = StealthJetMissileWeapon
1424    ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
1425    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1426    DelayBetweenShots           = 200                      ; time between shots, msec
1427    ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
1428    ClipReloadTime              = 8000                     ; how long to reload a Clip, msec
1429    AutoReloadsClip             = RETURN_TO_BASE           ; must return to base to reload this weapon
1430    ProjectileCollidesWith      = STRUCTURES
1431    AntiAirborneVehicle       = No
1432    AntiAirborneInfantry      = No
1433    ShowsAmmoPips             = Yes
1434  End
1435  
1436  ;------------------------------------------------------------------------------
1437  Weapon StealthJetLaserGuidedMissileWeapon
1438    PrimaryDamage               = 125.0            
1439    PrimaryDamageRadius         = 5.0      
1440    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1441    AttackRange                 = 220 ;320.0
1442    MinimumAttackRange          = 60.0 ; used to be 100.0, but that was too large for stealthjet/missile speed
1443    DamageType                  = STEALTHJET_MISSILES ;good against buildings, ok against everything else
1444    DeathType                   = EXPLODED
1445    WeaponSpeed                 = 1000
1446    ProjectileObject            = StealthJetMissile
1447    ProjectileExhaust           = MissileExhaust
1448    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1449    FireFX                      = None
1450    FireSound                   = StealthJetMissileWeapon
1451    ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
1452    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
1453    DelayBetweenShots           = 200                      ; time between shots, msec
1454    ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
1455    ClipReloadTime              = 8000                     ; how long to reload a Clip, msec
1456    AutoReloadsClip             = RETURN_TO_BASE           ; must return to base to reload this weapon
1457    ProjectileCollidesWith      = STRUCTURES
1458    AntiAirborneVehicle         = No
1459    AntiAirborneInfantry        = No
1460    ShowsAmmoPips               = Yes
1461  End
1462  
1463  ;------------------------------------------------------------------------------
1464  Weapon DaisyCutterDetonationWeapon
1465    PrimaryDamage = 2000.0            
1466    PrimaryDamageRadius = 100.0      
1467    AttackRange = 100.0
1468    DamageType = EXPLOSION         
1469    DeathType = EXPLODED
1470    WeaponSpeed = 99999.0             
1471    ProjectileObject = NONE
1472    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1473    DelayBetweenShots = 0                   ; time between shots, msec
1474    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
1475    ClipReloadTime = 0               ; how long to reload a Clip, msec
1476    AutoReloadsClip = No 
1477  End
1478  
1479  ;------------------------------------------------------------------------------
1480  Weapon DaisyCutterFlameWeapon
1481    PrimaryDamage = 5.0             ; Just a spot of flame to light trees on fire
1482    PrimaryDamageRadius = 100.0      
1483    AttackRange = 100.0
1484    DamageType = FLAME         
1485    DeathType = BURNED
1486    WeaponSpeed = 99999.0             
1487    ProjectileObject = NONE
1488    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1489    DelayBetweenShots = 0                   ; time between shots, msec
1490    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
1491    ClipReloadTime = 0               ; how long to reload a Clip, msec
1492    AutoReloadsClip = No 
1493  End
1494  
1495  ;------------------------------------------------------------------------------
1496  Weapon CarpetBombWeapon
1497    PrimaryDamage = 300.0            
1498    PrimaryDamageRadius = 50.0      
1499    AttackRange = 100.0
1500    DamageType = EXPLOSION         
1501    DeathType = EXPLODED
1502    WeaponSpeed = 99999.0             
1503    ProjectileObject = NONE
1504    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS    ; should this affect allies? @todo srj
1505    DelayBetweenShots = 0                   ; time between shots, msec
1506    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
1507    ClipReloadTime = 0               ; how long to reload a Clip, msec
1508    AutoReloadsClip = No 
1509  End
1510  
1511  ;------------------------------------------------------------------------------
1512  Weapon BlackMarketNukeWeapon
1513    PrimaryDamage = 800.0            
1514    PrimaryDamageRadius = 100.0      
1515    AttackRange = 100.0
1516    DamageType = EXPLOSION         
1517    DeathType = EXPLODED
1518    WeaponSpeed = 99999.0             
1519    FireOCL = OCL_RadiationFieldLarge
1520    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1521    DelayBetweenShots = 0                   ; time between shots, msec
1522    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
1523    ClipReloadTime = 0               ; how long to reload a Clip, msec
1524    AutoReloadsClip = No 
1525  End
1526  
1527  ;--------------------------------------------------------------------------------
1528  Weapon AnthraxBombWeapon
1529    PrimaryDamage       = 200.0            
1530    PrimaryDamageRadius = 100.0      
1531    AttackRange         = 100.0
1532    DamageType          = EXPLOSION         
1533    DeathType           = EXPLODED
1534    WeaponSpeed         = 99999.0
1535    FireOCL             = OCL_PoisonFieldAnthraxBomb  ; So this weapon will do normal damage, and create this object             
1536    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1537    DelayBetweenShots   = 0                   ; time between shots, msec
1538    ClipSize            = 1                   ; how many shots in a Clip (0 == infinite)
1539    ClipReloadTime      = 0                   ; how long to reload a Clip, msec
1540    AutoReloadsClip     = No 
1541  End
1542  
1543  ;------------------------------------------------------------------------------
1544  Weapon PatriotMissileWeapon
1545    PrimaryDamage               = 30.0            
1546    PrimaryDamageRadius         = 5.0      
1547    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1548    AttackRange                 = 225.0
1549    DamageType                  = EXPLOSION
1550    DeathType                   = EXPLODED
1551    WeaponSpeed                 = 1             ; locomotor specifies speed.
1552    ProjectileObject            = PatriotMissileRevised         ;PatriotMissile
1553    ProjectileExhaust           = MissileDefenderMissileExhaust     ;MissileExhaust
1554    FireFX                      = FX_PatriotIgnition             ;FX_BuggyMissileIgnition
1555    FireSound                   = PatriotBatteryWeapon
1556    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1557    DelayBetweenShots           = 250                   ; time between shots, msec
1558    ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
1559    ClipReloadTime              = 2000               ; how long to reload a Clip, msec
1560    AutoReloadsClip             = Yes 
1561    AntiAirborneVehicle         = No
1562    AntiAirborneInfantry        = No
1563    AntiGround                  = Yes
1564    AntiBallisticMissile        = No
1565    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1566    RequestAssistRange          = 200    ; when I fire, my object will look around for things of
1567    ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
1568    ProjectileCollidesWith      = STRUCTURES
1569  End
1570  
1571  ;------------------------------------------------------------------------------
1572  Weapon PatriotMissileWeaponAir
1573    PrimaryDamage               = 25.0            
1574    PrimaryDamageRadius         = 5.0      
1575    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1576    AttackRange                 = 350.0
1577    DamageType                  = EXPLOSION
1578    DeathType                   = EXPLODED
1579    WeaponSpeed                 = 600
1580    ProjectileObject            = PatriotMissileRevised         ;PatriotMissile
1581    ProjectileExhaust           = MissileDefenderMissileExhaust     ;MissileExhaust
1582    FireFX                      = FX_PatriotIgnition             ;FX_BuggyMissileIgnition
1583    FireSound                   = PatriotBatteryWeapon
1584    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1585    DelayBetweenShots           = 250                   ; time between shots, msec
1586    ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
1587    ClipReloadTime              = 2000               ; how long to reload a Clip, msec
1588    AutoReloadsClip             = Yes 
1589    AntiAirborneVehicle         = Yes
1590    AntiAirborneInfantry        = Yes
1591    AntiGround                  = No
1592    AntiBallisticMissile        = Yes
1593    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1594    RequestAssistRange          = 200    ; when I fire, my object will look around for things of
1595    ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
1596    ProjectileCollidesWith      = STRUCTURES
1597  End
1598  
1599  ;------------------------------------------------------------------------------
1600  ; For use with the Assisted Targeting Update.  No Assist Listing and longer range
1601  Weapon PatriotMissileAssistWeapon
1602    PrimaryDamage               = 25.0            
1603    PrimaryDamageRadius         = 5.0      
1604    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1605    AttackRange                 = 450.0 ; at least Regular's range + regular's request assist range
1606    DamageType                  = EXPLOSION          ; ignored for projectile weapons
1607    DeathType                   = EXPLODED
1608    WeaponSpeed                 = 600               ; ignored for projectile weapons
1609    ProjectileObject            = PatriotMissileRevised         ;PatriotMissile
1610    ProjectileExhaust           = MissileDefenderMissileExhaust     ;MissileExhaust
1611    FireFX                      = FX_PatriotIgnition             ;FX_BuggyMissileIgnition
1612    FireSound                   = PatriotBatteryWeapon
1613    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1614    DelayBetweenShots           = 250                   ; time between shots, msec
1615    ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
1616    ClipReloadTime              = 1000               ; how long to reload a Clip, msec
1617    AutoReloadsClip             = Yes 
1618    AntiAirborneVehicle         = Yes
1619    AntiAirborneInfantry        = Yes
1620    AntiGround                  = Yes
1621    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1622    ProjectileCollidesWith      = STRUCTURES
1623  End
1624  
1625  ;------------------------------------------------------------------------------
1626  Weapon TunnelDefenderRocketWeapon
1627    PrimaryDamage               = 40.0            
1628    PrimaryDamageRadius         = 5.0      
1629    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1630    AttackRange                 = 175.0
1631    MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
1632    DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
1633    DeathType                   = EXPLODED
1634    WeaponSpeed                 = 600               ; ignored for projectile weapons
1635    ProjectileObject            = TunnelDefenderMissile
1636    ProjectileExhaust           = MissileExhaust
1637    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1638    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1639    ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
1640    DelayBetweenShots           = 1000  ; time between shots, msec
1641    ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
1642    ClipReloadTime              = 0    ; how long to reload a Clip, msec
1643    AutoReloadsClip             = Yes 
1644    FireSound                   = RPGTrooperWeapon
1645    FireFX                      = None
1646    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1647    ProjectileCollidesWith      = STRUCTURES
1648    AntiAirborneVehicle         = Yes
1649    AntiAirborneInfantry        = Yes
1650    AntiAirborneVehicle = Yes
1651    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
1652  End
1653  
1654  ;------------------------------------------------------------------------------
1655  ;Also known as the RocketBuggyWeapon for those of you doing a search for it. 
1656  Weapon BuggyRocketWeapon
1657    PrimaryDamage               = 20.0            
1658    PrimaryDamageRadius         = 0.0      
1659    ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1660    SecondaryDamage             = 5.0          
1661    SecondaryDamageRadius       = 10.0    
1662    AttackRange                 = 300.0
1663    MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
1664    DamageType                  = EXPLOSION          ; ignored for projectile weapons
1665    DeathType                   = EXPLODED
1666    WeaponSpeed                 = 600               ; ignored for projectile weapons
1667    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1668    ProjectileObject            = RocketBuggyMissile
1669    ProjectileExhaust           = MissileExhaust
1670    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1671    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1672    ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
1673    DelayBetweenShots           = 200  ; time between shots, msec
1674    ClipSize                    = 6            ; how many shots in a Clip (0 == infinite)
1675    ClipReloadTime              = 6000    ; how long to reload a Clip, msec
1676    AutoReloadsClip             = Yes
1677    AutoReloadWhenIdle          = 6100    ; If I haven't fired in this long, I will reload on my own (rather than only after the last one is fired)
1678    FireFX                      = FX_BuggyMissileIgnition
1679    FireSound                   = RocketBuggyWeapon 
1680    WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
1681    ProjectileCollidesWith      = STRUCTURES
1682  End
1683  ;------------------------------------------------------------------------------
1684  ;Also known as the RocketBuggyWeapon for those of you doing a search for it. 
1685  Weapon CINE_BuggyRocketWeapon
1686    PrimaryDamage               = 20.0            
1687    PrimaryDamageRadius         = 0.0      
1688    ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1689    SecondaryDamage             = 5.0          
1690    SecondaryDamageRadius       = 10.0    
1691    AttackRange                 = 300.0   
1692    MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
1693    DamageType                  = EXPLOSION          ; ignored for projectile weapons
1694    DeathType                   = EXPLODED
1695    WeaponSpeed                 = 600               ; ignored for projectile weapons
1696    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1697    ProjectileObject            = RocketBuggyMissile
1698    ProjectileExhaust           = MissileExhaust
1699    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1700    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1701    ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
1702    DelayBetweenShots           = 200  ; time between shots, msec
1703    ClipSize                    = 6            ; how many shots in a Clip (0 == infinite)
1704    ClipReloadTime              = 6000    ; how long to reload a Clip, msec
1705    AutoReloadsClip             = Yes 
1706    FireFX                      = FX_BuggyMissileIgnition
1707    FireSound                   = RocketBuggyWeapon 
1708    WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
1709    ProjectileCollidesWith      = STRUCTURES
1710  End
1711  
1712  ;------------------------------------------------------------------------------
1713  Weapon BuggyRocketWeaponUpgraded
1714    PrimaryDamage               = 20.0            
1715    PrimaryDamageRadius         = 5.0      
1716    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1717    SecondaryDamage             = 5.0          
1718    SecondaryDamageRadius       = 10.0    
1719    AttackRange                 = 300.0
1720    MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
1721    DamageType                  = EXPLOSION          ; ignored for projectile weapons
1722    DeathType                   = EXPLODED
1723    WeaponSpeed                 = 600               ; ignored for projectile weapons
1724    ProjectileObject            = RocketBuggyMissile
1725    ProjectileExhaust           = MissileExhaust
1726    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1727    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1728    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
1729    ScatterRadius               = 0 ;10      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
1730    DelayBetweenShots           = 200  ; time between shots, msec
1731    ClipSize                    = 12            ; how many shots in a Clip (0 == infinite)
1732    ClipReloadTime              = 6000    ; how long to reload a Clip, msec
1733    AutoReloadsClip             = Yes
1734    AutoReloadWhenIdle          = 6100    ; If I haven't fired in this long, I will reload on my own (rather than only after the last one is fired) 
1735    FireFX                      = FX_BuggyMissileIgnition
1736    FireSound                   = RocketBuggyWeapon
1737    WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
1738    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
1739    ProjectileCollidesWith      = STRUCTURES
1740  End
1741  
1742  ;------------------------------------------------------------------------------
1743  Weapon StingerMissileWeapon
1744    PrimaryDamage = 30.0  ;20.0
1745    PrimaryDamageRadius = 5.0      
1746    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1747    AttackRange = 225.0
1748    DamageType = EXPLOSION          ; ignored for projectile weapons
1749    DeathType = EXPLODED
1750    WeaponSpeed = 750               ; ignored for projectile weapons
1751    ProjectileObject = StingerMissile
1752    ProjectileExhaust           = MissileExhaust
1753    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1754    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1755    DelayBetweenShots = 0  ; time between shots, msec
1756    ClipSize = 1             ; how many shots in a Clip (0 == infinite)
1757    ClipReloadTime = 1500 ;2000    ; how long to reload a Clip, msec
1758    AutoReloadsClip = Yes 
1759    FireFX = FX_StingerMissileIgnition
1760    FireSound = StingerMissileWeapon
1761    ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
1762    AntiAirborneVehicle = No
1763    AntiAirborneInfantry = No
1764    AntiGround = Yes
1765    WeaponBonus = PLAYER_UPGRADE DAMAGE 135% ; AP rocket upgrade
1766  
1767  
1768    ; note, these only apply to units that aren't the explicit target 
1769    ; (ie, units that just happen to "get in the way"... projectiles
1770    ; always collide with the Designated Target, regardless of these flags
1771    ProjectileCollidesWith = STRUCTURES
1772  End
1773  
1774  ;------------------------------------------------------------------------------
1775  Weapon CINE_StingerMissileWeapon
1776    PrimaryDamage = 20.0            
1777    PrimaryDamageRadius = 5.0      
1778    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1779    AttackRange = 2250.0
1780    DamageType = EXPLOSION          ; ignored for projectile weapons
1781    DeathType = EXPLODED
1782    WeaponSpeed = 750               ; ignored for projectile weapons
1783    ProjectileObject = StingerMissile
1784    ProjectileExhaust           = MissileExhaust
1785    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1786    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1787    DelayBetweenShots = 0  ; time between shots, msec
1788    ClipSize = 1             ; how many shots in a Clip (0 == infinite)
1789    ClipReloadTime = 2000    ; how long to reload a Clip, msec
1790    AutoReloadsClip = Yes 
1791    FireFX = FX_StingerMissileIgnition
1792    FireSound = StingerMissileWeapon
1793    ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
1794    AntiAirborneVehicle = No
1795    AntiAirborneInfantry = No
1796    AntiGround = Yes
1797    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
1798  
1799  
1800    ; note, these only apply to units that aren't the explicit target 
1801    ; (ie, units that just happen to "get in the way"... projectiles
1802    ; always collide with the Designated Target, regardless of these flags
1803    ProjectileCollidesWith = STRUCTURES
1804  End
1805  
1806  ;------------------------------------------------------------------------------
1807  Weapon StingerMissileWeaponAir
1808    PrimaryDamage = 30.0            
1809    PrimaryDamageRadius = 10.0      
1810    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1811    AttackRange = 400.0
1812    DamageType = EXPLOSION          ; ignored for projectile weapons
1813    DeathType = EXPLODED
1814    WeaponSpeed = 600               ; ignored for projectile weapons
1815    ProjectileObject = StingerMissile
1816    ProjectileExhaust           = MissileExhaust
1817    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1818    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1819    DelayBetweenShots = 0  ; time between shots, msec
1820    ClipSize = 1             ; how many shots in a Clip (0 == infinite)
1821    ClipReloadTime = 2000    ; how long to reload a Clip, msec
1822    AutoReloadsClip = Yes 
1823    FireFX = FX_StingerMissileIgnition
1824    FireSound = StingerMissileWeapon
1825    ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
1826    AntiAirborneVehicle = Yes
1827    AntiAirborneInfantry = No
1828    AntiGround = No
1829    AntiBallisticMissile = Yes
1830  
1831    ; note, these only apply to units that aren't the explicit target 
1832    ; (ie, units that just happen to "get in the way"... projectiles
1833    ; always collide with the Designated Target, regardless of these flags
1834    ProjectileCollidesWith = STRUCTURES
1835  End
1836  
1837  ;------------------------------------------------------------------------------
1838  Weapon ScorpionMissileWeapon
1839    PrimaryDamage = 100.0            
1840    PrimaryDamageRadius = 5.0      
1841    SecondaryDamage = 80.0          
1842    SecondaryDamageRadius = 25.0    
1843    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
1844    AttackRange = 150.0
1845    MinimumAttackRange = 40.0
1846    DamageType = EXPLOSION          ; ignored for projectile weapons
1847    DeathType = EXPLODED
1848    WeaponSpeed = 600               ; ignored for projectile weapons
1849    ProjectileObject = ScorpionMissile
1850    ProjectileExhaust           = MissileExhaust
1851    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
1852    FireFX                      = FX_BuggyMissileIgnition
1853    FireSound                   = ScorpionMissileWeapon
1854    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
1855  ;Removed - 9/28 - DB
1856  ;  ScatterRadius = 10      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
1857    DelayBetweenShots = 200  ; time between shots, msec
1858    ClipSize = 1            ; how many shots in a Clip (0 == infinite)
1859    ClipReloadTime = 15000  ; how long to reload a Clip, msec
1860    AutoReloadsClip = Yes 
1861    ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
1862  
1863    ; note, these only apply to units that aren't the explicit target 
1864    ; (ie, units that just happen to "get in the way"... projectiles
1865    ; always collide with the Designated Target, regardless of these flags
1866    ProjectileCollidesWith = STRUCTURES
1867    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
1868  End
1869  
1870  ;------------------------------------------------------------------------------
1871  Weapon SuicideDynamitePack
1872    PrimaryDamage = 500.0           ;was 150.0
1873    PrimaryDamageRadius = 18.0      ;was 6.0
1874    SecondaryDamage = 300.0         ;was 30.0
1875    SecondaryDamageRadius = 50.0    ;was 25.0
1876    AttackRange = 5.0       ; must be very close to use this weapon!
1877    DamageType = EXPLOSION
1878    DeathType = SUICIDED
1879    WeaponSpeed = 99999.0             
1880    ProjectileObject = NONE
1881    DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
1882    RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS NOT_SIMILAR
1883    DelayBetweenShots = 0              
1884    ClipSize = 1                        
1885    ClipReloadTime = 0                  
1886    AutoReloadsClip = No 
1887    FireFX = WeaponFX_SuicideDynamitePackDetonation
1888    FireSound = CarBomberDie
1889  End
1890  
1891  ;------------------------------------------------------------------------------
1892  Weapon SuicideCarBomb
1893    PrimaryDamage = 700.0            
1894    PrimaryDamageRadius = 20.0      
1895    SecondaryDamage = 100.0          
1896    SecondaryDamageRadius = 50.0    
1897    AttackRange = 5.0       ; must be very close to use this weapon!
1898    DamageType = EXPLOSION
1899    DeathType = SUICIDED
1900    WeaponSpeed = 99999.0             
1901    ProjectileObject = NONE
1902    DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
1903    RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS
1904    DelayBetweenShots = 0              
1905    ClipSize = 1                        
1906    ClipReloadTime = 0                  
1907    AutoReloadsClip = No 
1908    FireFX = WeaponFX_SuicideDynamitePackDetonation
1909    FireSound = CarBomberDie
1910  End
1911  
1912  ;------------------------------------------------------------------------------
1913  ;****************************Required For CHI01 INTRO**************************
1914  Weapon CINEConvoyNuke
1915    PrimaryDamage = 800.0            
1916    PrimaryDamageRadius = 100.0          
1917    AttackRange = 5.0
1918    DamageType = EXPLOSION
1919    DeathType = SUICIDED
1920    WeaponSpeed = 99999.0             
1921    ProjectileObject = NONE
1922    DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
1923    RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS
1924    DelayBetweenShots = 0              
1925    ClipSize = 1                        
1926    ClipReloadTime = 0                  
1927    AutoReloadsClip = No 
1928    FireFX = WeaponFX_CINEConvoyNuke
1929    FireSound = CarBomberDie
1930  End
1931  
1932  ;------------------------------------------------------------------------------
1933  Weapon HijackVehicle
1934    PrimaryDamage = 0.0            
1935    PrimaryDamageRadius = 0.0       
1936    AttackRange = 5.0       ; must be very close to use this weapon!
1937    DamageType = KILL_PILOT
1938    DeathType = NORMAL
1939    WeaponSpeed = 99999.0             
1940    FireFX = WeaponFX_GenericMachineGunFire
1941    FireSound = RebelWeapon
1942    ProjectileObject = NONE
1943    DelayBetweenShots = 0              
1944    ClipSize = 0                        
1945    ClipReloadTime = 0                  
1946    AutoReloadsClip = No 
1947  End
1948  
1949  ;------------------------------------------------------------------------------
1950  Weapon BlackLotusBuildingCaptureHack
1951    LeechRangeWeapon = Yes
1952    PrimaryDamage = 0.0            
1953    PrimaryDamageRadius = 0.01      
1954    AttackRange = 325
1955    DamageType = HACK
1956    DeathType = NORMAL
1957    WeaponSpeed = 600                     ;  dist/sec 
1958    WeaponRecoil = 0                      ; angle to deflect the model when firing
1959    ProjectileObject = DragonTankFlameProjectile
1960    FireFX = WeaponFX_DragonTankFlameWeapon
1961    ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
1962    FireSound = DragonTankWeaponLoop
1963    FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
1964    DelayBetweenShots = 40                ; time between shots, msec
1965    ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
1966    ClipReloadTime = 40                   ; how long to reload a Clip, msec
1967    ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
1968  
1969  End
1970  
1971  ;------------------------------------------------------------------------------
1972  Weapon BlackLotusVehicleDisableHack
1973    LeechRangeWeapon = Yes
1974    PrimaryDamage = 0.0            
1975    PrimaryDamageRadius = 0.01      
1976    AttackRange = 150.0
1977    DamageType = HACK
1978    DeathType = NORMAL
1979    WeaponSpeed = 600                     ;  dist/sec 
1980    WeaponRecoil = 0                      ; angle to deflect the model when firing
1981    ProjectileObject = DragonTankFlameProjectile
1982    FireFX = WeaponFX_DragonTankFlameWeapon
1983    ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
1984    FireSound = DragonTankWeaponLoop
1985    FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
1986    DelayBetweenShots = 40                ; time between shots, msec
1987    ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
1988    ClipReloadTime = 40                   ; how long to reload a Clip, msec
1989    ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
1990  End
1991  
1992  ;------------------------------------------------------------------------------
1993  Weapon BlackLotusStealCashHack
1994    LeechRangeWeapon = Yes
1995    PrimaryDamage = 0.0            
1996    PrimaryDamageRadius = 0.01      
1997    AttackRange = 75.0
1998    DamageType = HACK
1999    DeathType = NORMAL
2000    WeaponSpeed = 600                     ;  dist/sec 
2001    WeaponRecoil = 0                      ; angle to deflect the model when firing
2002    ProjectileObject = DragonTankFlameProjectile
2003    FireFX = WeaponFX_DragonTankFlameWeapon
2004    ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
2005    FireSound = DragonTankWeaponLoop
2006    FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
2007    DelayBetweenShots = 40                ; time between shots, msec
2008    ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
2009    ClipReloadTime = 40                   ; how long to reload a Clip, msec
2010    ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
2011  End
2012  
2013  ;------------------------------------------------------------------------------
2014  Weapon HackerDisableBuildingHack
2015    LeechRangeWeapon = Yes
2016    PrimaryDamage = 0.0            
2017    PrimaryDamageRadius = 0.01      
2018    AttackRange = 75.0
2019    DamageType = HACK
2020    DeathType = NORMAL
2021    WeaponSpeed = 600                     ;  dist/sec 
2022    WeaponRecoil = 0                      ; angle to deflect the model when firing
2023    ProjectileObject = DragonTankFlameProjectile
2024    FireFX = WeaponFX_DragonTankFlameWeapon
2025    ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
2026    FireSound = DragonTankWeaponLoop
2027    FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
2028    DelayBetweenShots = 40                ; time between shots, msec
2029    ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
2030    ClipReloadTime = 40                   ; how long to reload a Clip, msec
2031    ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
2032  End
2033  
2034  ;------------------------------------------------------------------------------
2035  ;This weapon fires standard anti-tank missiles at range
2036  ;------------------------------------------------------------------------------
2037  Weapon ChinaInfantryTankHunterMissileLauncher
2038    PrimaryDamage = 40.0            
2039    PrimaryDamageRadius = 5.0      
2040    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
2041    AttackRange = 175.0
2042    MinimumAttackRange = 5.0  ; Rockets take some distance to target, and you don't want them to blow up in your face.
2043    DamageType = INFANTRY_MISSILE   ;ignored for projectile weapons
2044    DeathType = EXPLODED
2045    WeaponSpeed = 600               ; ignored for projectile weapons
2046    ProjectileObject = TankHunterMissile
2047    ProjectileExhaust           = MissileExhaust
2048    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
2049    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
2050    ScatterRadius = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
2051    DelayBetweenShots = 1000  ; time between shots, msec
2052    ClipSize = 0             ; how many shots in a Clip (0 == infinite)
2053    ClipReloadTime = 0    ; how long to reload a Clip, msec
2054    AutoReloadsClip = Yes 
2055    FireSound = TankHunterWeapon
2056    FireFX = FX_BuggyMissileIgnition
2057    ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
2058  
2059    AntiAirborneVehicle   = Yes
2060    AntiAirborneInfantry  = Yes
2061  
2062    ; note, these only apply to units that aren't the explicit target 
2063    ; (ie, units that just happen to "get in the way"... projectiles
2064    ; always collide with the Designated Target, regardless of these flags
2065    ProjectileCollidesWith = STRUCTURES
2066  End
2067  
2068  ;------------------------------------------------------------------------------
2069  Weapon TNTDetonationWeapon ;Created by tankhunters
2070    PrimaryDamage = 500.0            
2071    PrimaryDamageRadius = 10.0      
2072    SecondaryDamage = 150.0          
2073    SecondaryDamageRadius = 50.0    
2074    AttackRange = 5.0
2075    DamageType = EXPLOSION         
2076    DeathType = EXPLODED
2077    WeaponSpeed = 99999.0             
2078    ProjectileObject = NONE
2079    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
2080    DelayBetweenShots = 0                   ; time between shots, msec
2081    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
2082    ClipReloadTime = 0               ; how long to reload a Clip, msec
2083    AutoReloadsClip = No 
2084  End
2085  
2086  ;------------------------------------------------------------------------------
2087  Weapon BurtonC4ChargeWeapon
2088    LeechRangeWeapon = Yes
2089    PrimaryDamage = 2000.0            
2090    PrimaryDamageRadius = 25.0      
2091    SecondaryDamage = 150.0          
2092    SecondaryDamageRadius = 75.0    
2093    AttackRange = 5.0
2094    DamageType = EXPLOSION         
2095    DeathType = EXPLODED
2096    WeaponSpeed = 99999.0             
2097    ProjectileObject = NONE
2098    FireSound = WorkerVoiceSurrender
2099    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
2100    DelayBetweenShots = 0                   ; time between shots, msec
2101    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
2102    ClipReloadTime = 0               ; how long to reload a Clip, msec
2103    AutoReloadsClip = No 
2104  End
2105  
2106  ;------------------------------------------------------------------------------
2107  Weapon RangerFlashBangGrenadeWeapon
2108    PrimaryDamage           = 25.0
2109    PrimaryDamageRadius     = 10.0
2110    SecondaryDamage         = 10.0
2111    SecondaryDamageRadius   = 40.0
2112    AttackRange             = 175.0 
2113    MinimumAttackRange      = 20.0
2114    DamageType              = SURRENDER
2115    DeathType               = NORMAL
2116    WeaponSpeed             = 120 
2117    ProjectileObject        = RangerFlashBangGrenade
2118    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
2119    FireSound               = RangerFlashBangWeapon
2120    ScatterRadius           = 4          ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
2121    DelayBetweenShots       = 0     ; time between shots, msec
2122    ClipSize                = 1              ; how many shots in a Clip (0 == infinite)
2123    ClipReloadTime          = 2000     ; how long to reload a Clip, msec
2124    AutoReloadsClip         = Yes 
2125    ProjectileDetonationFX  = WeaponFX_RangerFlashBangGrenadeDetonation
2126    ProjectileCollidesWith  = STRUCTURES WALLS
2127    AllowAttackGarrisonedBldgs  = Yes
2128  End
2129  
2130  ;------------------------------------------------------------------------------
2131  Weapon PTBoatGun
2132    PrimaryDamage           = 30.0
2133    PrimaryDamageRadius     = 0.0       ; 0 primary radius means "hits only intended victim"
2134    AttackRange             = 120.0
2135    DamageType              = SMALL_ARMS
2136    DeathType               = NORMAL
2137    WeaponSpeed             = 999999.0          ; dist/sec (huge value == effectively instant)
2138    ProjectileObject        = NONE
2139    FireFX                  = WeaponFX_TechnicalGunFire
2140    FireSound               = TechnicalWeapon
2141    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
2142    DelayBetweenShots       = 500               ; time between shots, msec
2143    ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
2144    ClipReloadTime          = 0              ; how long to reload a Clip, msec
2145  End
2146  
2147  ;------------------------------------------------------------------------------
2148  Weapon TechnicalMachineGunWeapon
2149    PrimaryDamage           = 8.0
2150    PrimaryDamageRadius     = 0.0       ; 0 primary radius means "hits only intended victim"
2151    AttackRange             = 120.0
2152    DamageType              = COMANCHE_VULCAN  
2153    DeathType               = NORMAL
2154    WeaponSpeed             = 999999.0          ; dist/sec (huge value == effectively instant)
2155    ProjectileObject        = NONE
2156    FireFX                  = WeaponFX_TechnicalGunFire
2157    VeterancyFireFX         = HEROIC WeaponFX_HeroicQuadCannonGunFire
2158    FireSound               = TechnicalWeapon
2159    RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
2160    DelayBetweenShots       = 200               ; time between shots, msec
2161    ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
2162    ClipReloadTime          = 0              ; how long to reload a Clip, msec
2163    WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; APBullets
2164  End
2165  
2166  ;------------------------------------------------------------------------------
2167  Weapon TechnicalRPGWeapon
2168    PrimaryDamage               = 50.0            
2169    PrimaryDamageRadius         = 5.0      
2170    ScatterRadiusVsInfantry     = 0.0              ; When this weapon is used against infantry, it can randomly miss by as much as this distance.
2171    AttackRange                 = 150.0
2172    MinimumAttackRange          = 5.0               ; Rockets take some distance to target, and you don't want them to blow up in your face.
2173    DamageType                  = EXPLOSION         ; ignored for projectile weapons
2174    DeathType                   = EXPLODED
2175    ProjectileObject            = TechnicalRPGMissile
2176    ProjectileExhaust           = InfantryStingerMissileExhaust
2177    VeterancyProjectileExhaust  = HEROIC HeroicInfantryStingerMissileExhaust
2178    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2179    ScatterRadius               = 0                 ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
2180    DelayBetweenShots           = 1000              ; time between shots, msec
2181    ClipSize                    = 0                 ; how many shots in a Clip (0 == infinite)
2182    ClipReloadTime              = 0                 ; how long to reload a Clip, msec
2183    AutoReloadsClip             = Yes 
2184    FireSound                   = TunnelRocketWeapon
2185    FireFX                      = None
2186    ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
2187    ProjectileCollidesWith      = STRUCTURES
2188    AntiAirborneVehicle         = No
2189    AntiAirborneInfantry        = No
2190  End
2191  
2192  ;------------------------------------------------------------------------------
2193  Weapon QuadCannonGun
2194    PrimaryDamage         = 10.0
2195    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
2196    AttackRange           = 150.0
2197    DamageType            = SMALL_ARMS
2198    DeathType             = NORMAL
2199    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
2200    ProjectileObject      = NONE
2201    FireFX                = WeaponFX_QuadCannonGunFire
2202    VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
2203    FireSound             = QuadCannonWeapon
2204    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
2205    DelayBetweenShots     = 100 ;500               ; time between shots, msec
2206    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
2207    ClipReloadTime        = 0              ; how long to reload a Clip, msec
2208    AntiAirborneVehicle   = No
2209    AntiAirborneInfantry  = No
2210    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
2211  End
2212  
2213  ;------------------------------------------------------------------------------
2214  Weapon QuadCannonGunAir
2215    PrimaryDamage         = 5.0
2216    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
2217    AttackRange           = 350.0
2218    DamageType            = SMALL_ARMS
2219    DeathType             = NORMAL
2220    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
2221    ProjectileObject      = NONE
2222    FireFX                = WeaponFX_QuadCannonGunFire
2223    VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
2224    FireSound             = QuadCannonWeapon
2225    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
2226    DelayBetweenShots     = 100 ;500               ; time between shots, msec
2227    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
2228    ClipReloadTime        = 0              ; how long to reload a Clip, msec
2229    AntiAirborneVehicle   = Yes
2230    AntiAirborneInfantry  = Yes
2231    AntiGround = No
2232    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
2233  End
2234  
2235  ;------------------------------------------------------------------------------
2236  Weapon QuadCannonGunUpgradeOne
2237    PrimaryDamage         = 8.0
2238    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
2239    AttackRange           = 150.0
2240    DamageType            = SMALL_ARMS
2241    DeathType             = NORMAL
2242    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
2243    ProjectileObject      = NONE
2244    FireFX                = WeaponFX_QuadCannonGunFire
2245    VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
2246    FireSound             = QuadCannonWeapon
2247    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
2248    DelayBetweenShots     = 50 ;250               ; time between shots, msec
2249    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
2250    ClipReloadTime        = 0              ; how long to reload a Clip, msec
2251    AntiAirborneVehicle   = No
2252    AntiAirborneInfantry  = No
2253    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
2254  End
2255  
2256  ;------------------------------------------------------------------------------
2257  Weapon QuadCannonGunUpgradeOneAir
2258    PrimaryDamage         = 5.0
2259    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
2260    AttackRange           = 350.0
2261    DamageType            = SMALL_ARMS
2262    DeathType             = NORMAL
2263    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
2264    ProjectileObject      = NONE
2265    FireFX                = WeaponFX_QuadCannonGunFire
2266    VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
2267    FireSound             = QuadCannonWeapon
2268    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
2269    DelayBetweenShots     = 50 ;250               ; time between shots, msec
2270    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
2271    ClipReloadTime        = 0              ; how long to reload a Clip, msec
2272    AntiAirborneVehicle   = Yes
2273    AntiAirborneInfantry  = Yes
2274    AntiGround = No
2275    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
2276  End
2277  
2278  ;------------------------------------------------------------------------------
2279  Weapon QuadCannonGunUpgradeTwo
2280    PrimaryDamage         = 8.0
2281    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
2282    AttackRange           = 150.0
2283    DamageType            = SMALL_ARMS
2284    DeathType             = NORMAL
2285    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
2286    ProjectileObject      = NONE
2287    FireFX                = WeaponFX_QuadCannonGunFire
2288    VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
2289    FireSound             = QuadCannonWeapon
2290    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
2291    DelayBetweenShots     = 25 ;125               ; time between shots, msec
2292    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
2293    ClipReloadTime        = 0              ; how long to reload a Clip, msec
2294    AntiAirborneVehicle   = No
2295    AntiAirborneInfantry  = No
2296    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
2297  End
2298  
2299  ;------------------------------------------------------------------------------
2300  Weapon QuadCannonGunUpgradeTwoAir
2301    PrimaryDamage         = 5.0
2302    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
2303    AttackRange           = 350.0
2304    DamageType            = SMALL_ARMS
2305    DeathType             = NORMAL
2306    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
2307    ProjectileObject      = NONE
2308    FireFX                = WeaponFX_QuadCannonGunFire
2309    VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
2310    FireSound             = QuadCannonWeapon
2311    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
2312    DelayBetweenShots     = 25 ;125               ; time between shots, msec
2313    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
2314    ClipReloadTime        = 0              ; how long to reload a Clip, msec
2315    AntiAirborneVehicle   = Yes
2316    AntiAirborneInfantry  = Yes
2317    AntiGround = No
2318    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
2319  End
2320  
2321  ;------------------------------------------------------------------------------
2322  Weapon SuicideBomb
2323    PrimaryDamage = 300.0            
2324    PrimaryDamageRadius = 10.0      
2325    SecondaryDamage = 60.0          
2326    SecondaryDamageRadius = 50.0    
2327    LeechRangeWeapon = Yes  ; so if it gets in range of a unit moving away from it, it still detonates. jba.
2328    AttackRange = 5.0       ; must be very close to use this weapon!
2329    DamageType = EXPLOSION
2330    DeathType = SUICIDED
2331    WeaponSpeed = 99999.0             
2332    ProjectileObject = NONE
2333    DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
2334    RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS
2335    DelayBetweenShots = 0              
2336    ClipSize = 1                        
2337    ClipReloadTime = 0                  
2338    AutoReloadsClip = No 
2339    FireFX = WeaponFX_SuicideDynamitePackDetonation
2340    FireSound = Explosion
2341  End
2342  
2343  ;------------------------------------------------------------------------------
2344  Weapon NuclearTankDeathWeapon
2345    PrimaryDamage               = 10.0 ;25.0            
2346    PrimaryDamageRadius         = 25.0      
2347    SecondaryDamage             = 10.0          
2348    SecondaryDamageRadius       = 75.0    
2349    AttackRange                 = 100.0
2350    DamageType                  = EXPLOSION 
2351    DeathType                   = EXPLODED
2352    WeaponSpeed                 = 99999.0
2353    ProjectileObject            = NONE
2354    FireFX                      = WeaponFX_NapalmMissileDetonation
2355    FireOCL                     = OCL_RadiationFieldSmall
2356    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2357    DelayBetweenShots           = 0                   ; time between shots, msec
2358    ClipSize                    = 1                            ; how many shots in a Clip (0 == infinite)
2359    ClipReloadTime              = 0                      ; how long to reload a Clip, msec
2360    AutoReloadsClip             = No 
2361    AntiGround                  = Yes
2362    DamageDealtAtSelfPosition   = Yes
2363  End
2364  
2365  ;------------------------------------------------------------------------------
2366  Weapon ChinaPowerPlantDeathWeapon
2367    PrimaryDamage               = 400.0            
2368    PrimaryDamageRadius         = 50.0      
2369    SecondaryDamage             = 50.0          
2370    SecondaryDamageRadius       = 100.0    
2371    AttackRange                 = 100.0
2372    DamageType                  = EXPLOSION         
2373    DeathType                   = EXPLODED
2374    WeaponSpeed                 = 99999.0    
2375    FireFX                      = FX_ChinaPowerPlantDeath
2376    FireOCL                     = OCL_RadiationFieldMedium
2377    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2378    DelayBetweenShots           = 0                   ; time between shots, msec
2379    ClipSize                    = 1                        ; how many shots in a Clip (0 == infinite)
2380    ClipReloadTime              = 0               ; how long to reload a Clip, msec
2381    AutoReloadsClip             = No 
2382  End
2383  
2384  ;------------------------------------------------------------------------------
2385  Weapon TomahawkMissileWeapon
2386    PrimaryDamage               = 150.0            
2387    PrimaryDamageRadius         = 10.0      
2388    SecondaryDamage             = 50.0          
2389    SecondaryDamageRadius       = 25.0    
2390    ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
2391    AttackRange                 = 350.0
2392    PreAttackDelay              = 250
2393    PreAttackType               = PER_SHOT ; Do the delay every single shot
2394    MinimumAttackRange          = 100.0
2395    DamageType                  = EXPLOSION 
2396    DeathType                   = EXPLODED
2397    FireFX                      = FX_TomahawkIgnition
2398    ProjectileObject            = TomahawkMissile
2399    ProjectileExhaust           = TomahawkMissileExhaust
2400    VeterancyProjectileExhaust  = HEROIC HeroicTomahawkMissileExhaust
2401  ;  ProjectileDetonationFX      = WeaponFX_TomahawkMissileDetonation
2402    ProjectileDetonationFX      = WeaponFX_BombTruckDefaultBombDetonation
2403    RadiusDamageAffects         = SELF ALLIES ENEMIES NEUTRALS NOT_SIMILAR
2404    FireSound                   = TomahawkWeapon
2405    DelayBetweenShots           = 1
2406    ClipSize                    = 1                   ; how many shots in a Clip (0 == infinite)
2407    ClipReloadTime              = 7000               ; how long to reload a Clip, msec
2408    ; Uses a clip of one to get the Reloading modelcondition
2409    CapableOfFollowingWaypoints = Yes
2410  
2411    ; note, these only apply to units that aren't the explicit target 
2412    ; (ie, units that just happen to "get in the way"... projectiles
2413    ; always collide with the Designated Target, regardless of these flags
2414    ProjectileCollidesWith = STRUCTURES
2415  End
2416  
2417  ;------------------------------------------------------------------------------
2418  Weapon AmbulanceCleanHazardWeapon
2419    PrimaryDamage               = 100.0            
2420    PrimaryDamageRadius         = 50.0      
2421    AttackRange                 = 100.0
2422    
2423    ;This breaks (deadlocks) the AI when ambulance is on top of a "toxic point" to attack.
2424    ;MinimumAttackRange          = 10.0
2425  
2426    DamageType                  = HAZARD_CLEANUP
2427    DeathType                   = NORMAL
2428    WeaponSpeed                 = 600                     ;  dist/sec 
2429    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2430    ProjectileObject            = CleanupStreamProjectile
2431    FireFX                      = WeaponFX_CleanupFireWeapon
2432    ProjectileDetonationFX      = WeaponFX_CleanupToxinDetonation
2433    FireSound                   = ToxinTractorWeaponLoop
2434    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2435    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2436    DelayBetweenShots           = 40                ; time between shots, msec
2437    ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
2438    ClipReloadTime              = 40                   ; how long to reload a Clip, msec
2439    ProjectileStreamName        = CleanupHazardProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
2440  
2441    ; note, these only apply to units that aren't the explicit target 
2442    ; (ie, units that just happen to "get in the way"... projectiles
2443    ; always collide with the Designated Target, regardless of these flags
2444    ProjectileCollidesWith = ENEMIES STRUCTURES WALLS SHRUBBERY
2445  End
2446  
2447  ;------------------------------------------------------------------------------
2448  Weapon BioHazardTechCleanHazardWeapon 
2449    PrimaryDamage               = 4.0            
2450    PrimaryDamageRadius         = 25.0      
2451    AttackRange                 = 100.0
2452    MinimumAttackRange          = 10.0
2453    DamageType                  = HAZARD_CLEANUP
2454    DeathType                   = NORMAL
2455    WeaponSpeed                 = 600                     ;  dist/sec 
2456    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2457    ProjectileObject            = BioHazardCleanupStreamProjectile
2458    FireFX                      = WeaponFX_CleanupFireWeapon
2459    ProjectileDetonationFX      = WeaponFX_CleanupToxinDetonation
2460    FireSound                   = ToxinTractorWeaponLoop
2461    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2462    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2463    DelayBetweenShots           = 40                ; time between shots, msec
2464    ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
2465    ClipReloadTime              = 40                   ; how long to reload a Clip, msec
2466    ProjectileStreamName        = CleanupHazardProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
2467  
2468    ; note, these only apply to units that aren't the explicit target 
2469    ; (ie, units that just happen to "get in the way"... projectiles
2470    ; always collide with the Designated Target, regardless of these flags
2471    ProjectileCollidesWith = ENEMIES STRUCTURES WALLS SHRUBBERY
2472  End
2473  
2474  ;------------------------------------------------------------------------------
2475  Weapon DragonTankFlameWeapon
2476    PrimaryDamage               = 10.0            
2477    PrimaryDamageRadius         = 5.0      
2478    SecondaryDamage             = 1.0          
2479    SecondaryDamageRadius       = 10.0    
2480    ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
2481    AttackRange                 = 75.0
2482    MinimumAttackRange          = 0; 10.0
2483    DamageType                  = FLAME
2484    DeathType                   = BURNED
2485    WeaponSpeed                 = 600                     ;  dist/sec 
2486    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2487    ProjectileObject            = DragonTankFlameProjectile
2488    FireFX                      = WeaponFX_DragonTankFlameWeapon
2489    ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonation
2490    FireSound                   = DragonTankWeaponLoop
2491    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2492    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2493    DelayBetweenShots           = 40                ; time between shots, msec
2494    ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
2495    ClipReloadTime              = 40                   ; how long to reload a Clip, msec
2496    ProjectileStreamName        = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
2497    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2498    AllowAttackGarrisonedBldgs  = Yes
2499  End
2500  
2501  ;------------------------------------------------------------------------------
2502  Weapon DragonTankFireWallWeapon
2503    PrimaryDamage               = 10.0            
2504    PrimaryDamageRadius         = 5.0      
2505    SecondaryDamage             = 1.0          
2506    SecondaryDamageRadius       = 10.0    
2507    AttackRange                 = 25.0 ; About the range from unit to start of fire.
2508    DamageType                  = FLAME
2509    DeathType                   = BURNED
2510    WeaponSpeed                 = 600                     ;  dist/sec 
2511    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2512    ProjectileObject            = DragonTankFlameProjectile
2513    FireFX                      = WeaponFX_DragonTankFlameWeapon
2514    ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonation
2515    ProjectileDetonationOCL     = OCL_FireWallSegment
2516    FireSound                   = DragonTankWeaponLoop
2517    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2518    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2519    DelayBetweenShots           = 40                ; time between shots, msec
2520    ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
2521    ClipReloadTime              = 0                   ; how long to reload a Clip, msec
2522    ProjectileStreamName        = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
2523  
2524    ; note, these only apply to units that aren't the explicit target 
2525    ; (ie, units that just happen to "get in the way"... projectiles
2526    ; always collide with the Designated Target, regardless of these flags
2527    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2528  End
2529  
2530  ;------------------------------------------------------------------------------
2531  Weapon DragonTankFlameWeaponUpgraded
2532    PrimaryDamage               = 12.5            
2533    PrimaryDamageRadius         = 5.0      
2534    SecondaryDamage             = 1.25          
2535    SecondaryDamageRadius       = 10.0    
2536    ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
2537    AttackRange                 = 75.0
2538    MinimumAttackRange          = 10.0
2539    DamageType                  = FLAME
2540    DeathType                   = BURNED
2541    WeaponSpeed                 = 600                     ;  dist/sec 
2542    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2543    ProjectileObject            = DragonTankFlameProjectileUpgraded
2544    FireFX                      = WeaponFX_DragonTankFlameWeaponUpgraded
2545    ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonationUpgraded
2546    FireSound                   = DragonTankWeaponLoop
2547    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2548    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2549    DelayBetweenShots           = 40                ; time between shots, msec
2550    ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
2551    ClipReloadTime              = 0                   ; how long to reload a Clip, msec
2552    ProjectileStreamName        = FlamethrowerProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
2553    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2554    AllowAttackGarrisonedBldgs  = Yes
2555  End
2556  
2557  ;------------------------------------------------------------------------------
2558  Weapon DragonTankFireWallWeaponUpgraded
2559    PrimaryDamage               = 12.5            
2560    PrimaryDamageRadius         = 5.0      
2561    SecondaryDamage             = 1.25          
2562    SecondaryDamageRadius       = 10.0    
2563    AttackRange                 = 25.0 ; About the range from unit to start of fire.
2564    DamageType                  = FLAME
2565    DeathType                   = BURNED
2566    WeaponSpeed                 = 600                     ;  dist/sec 
2567    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2568    ProjectileObject            = DragonTankFlameProjectileUpgraded
2569    FireFX                      = WeaponFX_DragonTankFlameWeaponUpgraded
2570    ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonationUpgraded
2571    ProjectileDetonationOCL     = OCL_FireWallSegmentUpgraded
2572    FireSound                   = DragonTankWeaponLoop
2573    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2574    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2575    DelayBetweenShots           = 40                ; time between shots, msec
2576    ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
2577    ClipReloadTime              = 40                   ; how long to reload a Clip, msec
2578    ProjectileStreamName        = FlamethrowerProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
2579  
2580    ; note, these only apply to units that aren't the explicit target 
2581    ; (ie, units that just happen to "get in the way"... projectiles
2582    ; always collide with the Designated Target, regardless of these flags
2583    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2584  End
2585  
2586  ;------------------------------------------------------------------------------
2587  Weapon ToxinTruckGun
2588    PrimaryDamage               = 10.0            
2589    PrimaryDamageRadius         = 10.0      
2590    ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
2591    AttackRange                 = 100.0
2592    MinimumAttackRange          = 0 ;20.0
2593    DamageType                  = POISON
2594    DeathType                   = POISONED
2595    WeaponSpeed                 = 600                     ;  dist/sec 
2596    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2597    ProjectileObject            = ToxinTruckStreamProjectile
2598    FireFX                      = WeaponFX_ToxinTruckFlameWeapon
2599    ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonation
2600    FireSound                   = ToxinTractorWeaponLoop
2601    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2602    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2603    DelayBetweenShots           = 40                ; time between shots, msec
2604    ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
2605    ClipReloadTime              = 40                   ; how long to reload a Clip, msec
2606    ProjectileStreamName        = ToxinTruckProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
2607    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2608    AllowAttackGarrisonedBldgs  = Yes
2609  End
2610  
2611  ;------------------------------------------------------------------------------
2612  Weapon ToxinTruckGunUpgraded
2613    PrimaryDamage               = 12.5
2614    PrimaryDamageRadius         = 10.0      
2615    ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
2616    AttackRange                 = 100.0
2617    MinimumAttackRange          = 10.0
2618    DamageType                  = POISON
2619    DeathType                   = POISONED_BETA
2620    WeaponSpeed                 = 600                     ;  dist/sec 
2621    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2622    ProjectileObject            = ToxinTruckStreamProjectileUpgraded
2623    FireFX                      = WeaponFX_ToxinTruckFlameWeaponUpgraded
2624    ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonationUpgraded
2625    FireSound                   = ToxinTractorWeaponLoop
2626    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2627    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2628    DelayBetweenShots           = 40                ; time between shots, msec
2629    ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
2630    ClipReloadTime              = 40                   ; how long to reload a Clip, msec
2631    ProjectileStreamName        = ToxinTruckProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
2632    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2633    AllowAttackGarrisonedBldgs  = Yes
2634  End
2635  
2636  ;------------------------------------------------------------------------------
2637  Weapon ToxinTruckSprayer
2638    PrimaryDamage               = 0            
2639    PrimaryDamageRadius         = 0.0      
2640    SecondaryDamage             = 2.0          
2641    SecondaryDamageRadius       = 75.0    
2642    AttackRange                 = 15.0
2643    DamageType                  = POISON
2644    DeathType                   = POISONED
2645    WeaponSpeed                 = 600                     ;  dist/sec 
2646    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2647    ProjectileObject            = ToxinTruckSprayProjectile
2648    FireFX                      = WeaponFX_ToxinTruckSprayNozzle
2649    ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGround
2650    FireSound                   = ToxinTractorContaminate
2651    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2652    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2653    DelayBetweenShots           = 200                ; time between shots, msec
2654    ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
2655    ClipReloadTime              = 0                   ; how long to reload a Clip, msec
2656    ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
2657    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2658    AcceptableAimDelta = 180
2659  End
2660  
2661  ;------------------------------------------------------------------------------
2662  Weapon ToxinTruckSprayerUpgraded
2663    PrimaryDamage               = 0            
2664    PrimaryDamageRadius         = 0.0      
2665    SecondaryDamage             = 2.5          
2666    SecondaryDamageRadius       = 75.0    
2667    AttackRange                 = 15.0
2668    DamageType                  = POISON
2669    DeathType                   = POISONED_BETA
2670    WeaponSpeed                 = 600                     ;  dist/sec 
2671    WeaponRecoil                = 0                      ; angle to deflect the model when firing
2672    ProjectileObject            = ToxinTruckSprayProjectile
2673    FireFX                      = WeaponFX_ToxinTruckSprayNozzleUpgraded
2674    ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGroundUpgraded
2675    FireSound                   = ToxinTractorContaminate
2676    FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
2677    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2678    DelayBetweenShots           = 200                ; time between shots, msec
2679    ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
2680    ClipReloadTime              = 0                   ; how long to reload a Clip, msec
2681    ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
2682    ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
2683    AcceptableAimDelta = 180
2684  End
2685  
2686  ;------------------------------------------------------------------------------
2687  Weapon FireWallSegmentWeapon
2688    PrimaryDamage               = 4.0            
2689    PrimaryDamageRadius         = 10.0      
2690    AttackRange                 = 15.0
2691    DamageType                  = FLAME
2692    DeathType                   = BURNED
2693    WeaponSpeed                 = 600                     ;  dist/sec 
2694  
2695  ; FireFx left commented out to illustrate particle presence is on object
2696    ;FireFX = WeaponFX_SmallFireFieldWeapon
2697  
2698    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2699    DelayBetweenShots           = 250                ; time between shots, msec
2700  End
2701  
2702  ;------------------------------------------------------------------------------
2703  Weapon FireWallSegmentUpgradedWeapon
2704    PrimaryDamage               = 5.0            
2705    PrimaryDamageRadius         = 10.0      
2706    AttackRange                 = 15.0
2707    DamageType                  = FLAME
2708    DeathType                   = BURNED
2709    WeaponSpeed                 = 600                     ;  dist/sec 
2710  
2711  ; FireFx left commented out to illustrate particle presence is on object
2712    ;FireFX = WeaponFX_SmallFireFieldWeapon
2713  
2714    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2715    DelayBetweenShots           = 250                ; time between shots, msec
2716  End
2717  
2718  ;------------------------------------------------------------------------------
2719  Weapon ParticleUplinkCannonBeamTrailRemnantWeapon
2720    PrimaryDamage               = 15.0 ;30.0            
2721    PrimaryDamageRadius         = 10.0      
2722    DamageType                  = PARTICLE_BEAM
2723    DeathType                   = BURNED
2724    WeaponSpeed                 = 250                     ;  dist/sec 
2725  
2726  ; FireFx left commented out to illustrate particle presence is on object
2727    ;FireFX = WeaponFX_SmallFireFieldWeapon
2728  
2729    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2730    DelayBetweenShots           = 250                ; time between shots, msec
2731  End
2732  
2733  ;------------------------------------------------------------------------------
2734  Weapon DirtyNukeCreationWeapon ; Nukes are complicated, so we need to spawn an object, not just do damage
2735    FireOCL = OCL_DirtyNuke
2736  End
2737  
2738  ;------------------------------------------------------------------------------
2739  Weapon SmallFireFieldWeapon
2740    PrimaryDamage               = 5.0  ;will do this 10 times in 2.5 seconds - DB            
2741    PrimaryDamageRadius         = 30.0      
2742    AttackRange                 = 15.0
2743    MinimumAttackRange          = 10.0
2744    DamageType                  = FLAME
2745    DeathType                   = BURNED
2746    WeaponSpeed                 = 600                     ;  dist/sec 
2747  
2748  ;Commented out to show effect was moved to object itself.  Note that if the damage radius
2749  ;changed then the art must be changed now too becuase of this.
2750    ;FireFX = WeaponFX_SmallFireFieldWeapon ; This FxList is marked UseCallersRadius,
2751    ; so the damage range can be tweaked and it will change the effect's radius too
2752  
2753    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
2754    DelayBetweenShots           = 250                ; time between shots, msec
2755  End
2756  
2757  ;------------------------------------------------------------------------------
2758  Weapon SmallFireFieldWeaponUpgraded
2759    PrimaryDamage = 7.5            
2760    PrimaryDamageRadius = 30.0      
2761    AttackRange = 15.0
2762    MinimumAttackRange = 10.0
2763    DamageType = FLAME
2764    DeathType = BURNED
2765    WeaponSpeed = 600                     ;  dist/sec 
2766  
2767  ;Commented out to show effect was moved to object itself.  Note that if the damage radius
2768  ;changed then the art must be changed now too becuase of this.
2769    ;FireFX = WeaponFX_SmallFireFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
2770    ; so the damage range can be tweaked and it will change the effect's radius too
2771  
2772    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
2773    DelayBetweenShots = 250                ; time between shots, msec
2774  End
2775  
2776  ;------------------------------------------------------------------------------
2777  ;This weapon is used at the core of every damage field to kill other fields to prevent stacking
2778  Weapon HazardFieldCoreWeapon
2779    PrimaryDamage = 200.0            
2780    PrimaryDamageRadius = 10.0      
2781    AttackRange = 15.0
2782    DamageType = HAZARD_CLEANUP
2783  
2784    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
2785  
2786    ; This clip pattern insures that the new field kills the old fields
2787    DelayBetweenShots = 5
2788    ClipSize = 1         
2789    ClipReloadTime = 100000
2790  End
2791  
2792  ;------------------------------------------------------------------------------
2793  Weapon LargePoisonFieldWeapon
2794    PrimaryDamage = 15.0            
2795    PrimaryDamageRadius = 140.0      
2796    AttackRange = 15.0
2797    MinimumAttackRange = 10.0
2798    DamageType = POISON
2799    DeathType = POISONED
2800    WeaponSpeed = 600                     ;  dist/sec 
2801  
2802    FireFX = WeaponFX_LargePoisonFieldWeapon ; This FxList is marked UseCallersRadius,
2803    ; so the damage range can be tweaked and it will change the effect's radius too
2804  
2805    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2806    DelayBetweenShots = 500                ; time between shots, msec
2807  End
2808  
2809  ;------------------------------------------------------------------------------
2810  Weapon MediumPoisonFieldWeapon
2811    PrimaryDamage = 2.0            
2812    PrimaryDamageRadius = 80.0      
2813    AttackRange = 15.0
2814    MinimumAttackRange = 10.0
2815    DamageType = POISON
2816    DeathType = POISONED
2817    WeaponSpeed = 600                     ;  dist/sec 
2818  
2819    FireFX = WeaponFX_MediumPoisonFieldWeapon ; This FxList is marked UseCallersRadius,
2820    ; so the damage range can be tweaked and it will change the effect's radius too
2821  
2822    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2823    DelayBetweenShots = 500                ; time between shots, msec
2824  End
2825  
2826  ;------------------------------------------------------------------------------
2827  Weapon SmallPoisonFieldWeapon
2828    PrimaryDamage = 2.0            
2829    PrimaryDamageRadius = 12.0 ;7.5      
2830    AttackRange = 15.0
2831    MinimumAttackRange = 10.0
2832    DamageType = POISON
2833    DeathType = POISONED
2834    WeaponSpeed = 600                     ;  dist/sec 
2835  
2836    FireFX = WeaponFX_SmallPoisonFieldWeapon ; This FxList is marked UseCallersRadius,
2837    ; so the damage range can be tweaked and it will change the effect's radius too
2838  
2839    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2840    DelayBetweenShots = 500                ; time between shots, msec
2841  End
2842  
2843  ;------------------------------------------------------------------------------
2844  Weapon AnthraxBombPoisonFieldWeapon
2845    PrimaryDamage = 40.0
2846    PrimaryDamageRadius = 300.0      
2847    AttackRange = 15.0
2848    MinimumAttackRange = 10.0
2849    DamageType = POISON
2850    DeathType = POISONED_BETA
2851    WeaponSpeed = 600                     ;  dist/sec 
2852  
2853    FireFX = WeaponFX_LargePoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
2854    ; so the damage range can be tweaked and it will change the effect's radius too
2855  
2856    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2857    DelayBetweenShots = 500                ; time between shots, msec
2858  End
2859  
2860  ;------------------------------------------------------------------------------
2861  Weapon LargePoisonFieldWeaponUpgraded
2862    PrimaryDamage = 25.0            
2863    PrimaryDamageRadius = 140.0      
2864    AttackRange = 15.0
2865    MinimumAttackRange = 10.0
2866    DamageType = POISON
2867    DeathType = POISONED_BETA
2868    WeaponSpeed = 600                     ;  dist/sec 
2869  
2870    FireFX = WeaponFX_LargePoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
2871    ; so the damage range can be tweaked and it will change the effect's radius too
2872  
2873    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2874    DelayBetweenShots = 500                ; time between shots, msec
2875  End
2876  
2877  ;------------------------------------------------------------------------------
2878  Weapon MediumPoisonFieldWeaponUpgraded
2879    PrimaryDamage = 2.5            
2880    PrimaryDamageRadius = 80.0      
2881    AttackRange = 15.0
2882    MinimumAttackRange = 10.0
2883    DamageType = POISON
2884    DeathType = POISONED_BETA
2885    WeaponSpeed = 600                     ;  dist/sec 
2886  
2887    FireFX = WeaponFX_MediumPoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
2888    ; so the damage range can be tweaked and it will change the effect's radius too
2889  
2890    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2891    DelayBetweenShots = 500                ; time between shots, msec
2892  End
2893  
2894  ;------------------------------------------------------------------------------
2895  Weapon SmallPoisonFieldWeaponUpgraded
2896    PrimaryDamage = 2.5            
2897    PrimaryDamageRadius = 7.5     
2898    AttackRange = 15.0
2899    MinimumAttackRange = 10.0
2900    DamageType = POISON
2901    DeathType = POISONED_BETA
2902    WeaponSpeed = 600                     ;  dist/sec 
2903  
2904    FireFX = WeaponFX_SmallPoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
2905    ; so the damage range can be tweaked and it will change the effect's radius too
2906  
2907    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2908    DelayBetweenShots = 500                ; time between shots, msec
2909  End
2910  
2911  ;------------------------------------------------------------------------------
2912  Weapon LargeRadiationFieldWeapon
2913    PrimaryDamage = 25.0            
2914    PrimaryDamageRadius = 200.0      
2915    AttackRange = 15.0
2916    MinimumAttackRange = 10.0
2917    DamageType = RADIATION
2918    DeathType = NORMAL
2919    WeaponSpeed = 600                     ;  dist/sec 
2920  
2921    FireFX = WeaponFX_LargeRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
2922    ; so the damage range can be tweaked and it will change the effect's radius too
2923  
2924    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2925    DelayBetweenShots = 750                ; time between shots, msec
2926  End
2927  
2928  ;------------------------------------------------------------------------------
2929  Weapon MediumRadiationFieldWeapon
2930    PrimaryDamage = 15.0            
2931    PrimaryDamageRadius = 50.0      
2932    AttackRange = 15.0
2933    MinimumAttackRange = 10.0
2934    DamageType = RADIATION
2935    DeathType = NORMAL
2936    WeaponSpeed = 600                     ;  dist/sec 
2937  
2938    FireFX = WeaponFX_MediumRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
2939    ; so the damage range can be tweaked and it will change the effect's radius too
2940  
2941    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2942    DelayBetweenShots = 750                ; time between shots, msec
2943  End
2944  
2945  ;------------------------------------------------------------------------------
2946  Weapon SmallRadiationFieldWeapon
2947    PrimaryDamage = 5.0            
2948    PrimaryDamageRadius = 25.0      
2949    AttackRange = 15.0
2950    MinimumAttackRange = 10.0
2951    DamageType = RADIATION
2952    DeathType = NORMAL
2953    WeaponSpeed = 600                     ;  dist/sec 
2954  
2955    FireFX = WeaponFX_SmallRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
2956    ; so the damage range can be tweaked and it will change the effect's radius too
2957  
2958    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2959    DelayBetweenShots = 750                ; time between shots, msec
2960  End
2961  
2962  ;------------------------------------------------------------------------------
2963  Weapon NukeRadiationFieldWeapon
2964    PrimaryDamage = 25.0            
2965    PrimaryDamageRadius = 200.0      
2966    AttackRange = 15.0
2967    MinimumAttackRange = 10.0
2968    DamageType = RADIATION
2969    DeathType = NORMAL
2970    WeaponSpeed = 600                     ;  dist/sec 
2971  
2972    FireFX = WeaponFX_LargeRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
2973    ; so the damage range can be tweaked and it will change the effect's radius too
2974  
2975    SuspendFXDelay = 10000;milliseconds 
2976  
2977    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
2978    DelayBetweenShots = 750                ; time between shots, msec
2979  End
2980  
2981  ;------------------------------------------------------------------------------
2982  Weapon TreeFireDealDamageWeapon
2983    PrimaryDamage = 5.0            
2984    PrimaryDamageRadius = 2.0      
2985    AttackRange = 100.0
2986    DamageType = FLAME         
2987    DeathType = BURNED
2988    WeaponSpeed = 99999.0             
2989    ProjectileObject = NONE
2990    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
2991    DelayBetweenShots = 0                   ; time between shots, msec
2992    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
2993    ClipReloadTime = 0               ; how long to reload a Clip, msec
2994    AutoReloadsClip = No 
2995  End
2996  
2997  ;------------------------------------------------------------------------------
2998  Weapon BurningEmberWeapon
2999    PrimaryDamage = 2.0            
3000    PrimaryDamageRadius = 2.0      
3001    AttackRange = 100.0
3002    DamageType = FLAME         
3003    DeathType = BURNED
3004    WeaponSpeed = 99999.0             
3005    ProjectileObject = NONE
3006    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3007    DelayBetweenShots = 0                   ; time between shots, msec
3008    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
3009    ClipReloadTime = 0               ; how long to reload a Clip, msec
3010    AutoReloadsClip = No 
3011  End
3012  
3013  ;------------------------------------------------------------------------------
3014  ; firing this weapon just creates a Firestorm object.
3015  Weapon FirestormSmallCreationWeapon
3016    DamageType = FLAME
3017    DeathType = BURNED
3018    FireOCL = OCL_FirestormSmall
3019  End
3020  
3021  ;------------------------------------------------------------------------------
3022  ; firing this weapon just creates a Firestorm object.
3023  Weapon BlackNapalmFirestormSmallCreationWeapon
3024    DamageType = FLAME
3025    DeathType = BURNED
3026    FireOCL = OCL_BlackNapalmFirestormSmall
3027  End
3028  
3029  ;------------------------------------------------------------------------------
3030  Weapon TroopCrawlerAssault
3031    PrimaryDamage = 0.00001
3032    PrimaryDamageRadius = 0.0
3033    AttackRange = 175.0 ;Needs to see farther and match it's unit's sight range -- else troop crawlers will get slaughtered against tanks!
3034    DamageType = DEPLOY
3035    DeathType = NORMAL
3036    WeaponSpeed = 0         ; dist/sec 
3037    ProjectileObject = NONE
3038    FireFX = None
3039    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3040    DelayBetweenShots = 1000               ; time between shots, msec
3041    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3042    ClipReloadTime = 0              ; how long to reload a Clip, msec
3043    AcceptableAimDelta = 180
3044  End
3045  
3046  ;------------------------------------------------------------------------------
3047  Weapon InfernoCannonGun
3048    PrimaryDamage = 30.0
3049    PrimaryDamageRadius = 15.0
3050    ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3051    AttackRange = 300
3052    MinimumAttackRange = 50.0
3053    MinTargetPitch = -90
3054    MaxTargetPitch = 79
3055    DamageType = EXPLOSION
3056    DeathType = EXPLODED
3057    WeaponSpeed = 250         ; dist/sec 
3058    MinWeaponSpeed = 75        
3059    ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range
3060    ProjectileObject = InfernoTankShell
3061    FireFX = WeaponFX_GenericTankGunNoTracer
3062    VeterancyFireFX = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
3063    FireSound = InfernoCannonWeapon
3064    ProjectileDetonationFX = WeaponFX_InfernoTankShellDetonation
3065    RadiusDamageAffects = ENEMIES NEUTRALS ALLIES NOT_SIMILAR
3066    DelayBetweenShots = 4000               ; time between shots, msec
3067    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3068    ClipReloadTime = 0              ; how long to reload a Clip, msec
3069  
3070    HistoricBonusTime = 3000
3071    HistoricBonusCount = 6
3072    HistoricBonusRadius = 20
3073    HistoricBonusWeapon = FirestormSmallCreationWeapon
3074  End
3075  
3076  ;------------------------------------------------------------------------------
3077  Weapon InfernoCannonGunUpgraded
3078    PrimaryDamage = 30.0
3079    PrimaryDamageRadius = 15.0
3080    ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3081    AttackRange = 300
3082    MinimumAttackRange = 50.0
3083    MinTargetPitch = -90
3084    MaxTargetPitch = 79
3085    DamageType = EXPLOSION
3086    DeathType = EXPLODED
3087    WeaponSpeed = 250         ; dist/sec 
3088    MinWeaponSpeed = 75        
3089    ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range
3090    ProjectileObject = InfernoTankShellUpgraded
3091    FireFX = WeaponFX_GenericTankGunNoTracer
3092    VeterancyFireFX = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
3093    FireSound = InfernoCannonWeapon
3094    ProjectileDetonationFX = WeaponFX_InfernoTankShellDetonation
3095    RadiusDamageAffects = ENEMIES NEUTRALS ALLIES NOT_SIMILAR
3096    DelayBetweenShots = 4000               ; time between shots, msec
3097    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3098    ClipReloadTime = 0              ; how long to reload a Clip, msec
3099  
3100    HistoricBonusTime = 3000
3101    HistoricBonusCount = 6
3102    HistoricBonusRadius = 20
3103    HistoricBonusWeapon = BlackNapalmFirestormSmallCreationWeapon
3104  End
3105  
3106  ;------------------------------------------------------------------------------
3107  Weapon SmallFireFieldCreationWeapon
3108    FireOCL = OCL_FireFieldSmall
3109    PrimaryDamage = 0.0
3110    PrimaryDamageRadius = 1.0
3111  End
3112  
3113  ;------------------------------------------------------------------------------
3114  Weapon SmallFireFieldUpgradedCreationWeapon
3115    FireOCL = OCL_FireFieldUpgradedSmall
3116    PrimaryDamage = 0.0
3117    PrimaryDamageRadius = 1.0
3118  End
3119  
3120  ;------------------------------------------------------------------------------
3121  Weapon NukeCannonGun
3122    PrimaryDamage           = 400.0
3123    PrimaryDamageRadius     = 50.0
3124    SecondaryDamage         = 20.0
3125    SecondaryDamageRadius   = 60.0
3126    ScatterRadiusVsInfantry = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3127    AttackRange             = 350.0
3128    MinimumAttackRange      = 200.0
3129    DamageType              = EXPLOSION
3130    DeathType               = EXPLODED
3131    WeaponSpeed             = 200         ; dist/sec 
3132    ProjectileObject        = NukeCannonShell
3133    FireFX                  = WeaponFX_NukeCannonMuzzleFlash
3134    FireSound               = NukeCannonWeapon
3135    VeterancyFireFX         = HEROIC WeaponFX_HeroicNukeCannonMuzzleFlash
3136    ProjectileDetonationFX  = WeaponFX_NukeCannon
3137    ProjectileDetonationOCL = OCL_RadiationFieldMedium
3138    RadiusDamageAffects     = SUICIDE SELF ALLIES ENEMIES NEUTRALS NOT_SIMILAR
3139    DelayBetweenShots       = 10000        ; time between shots, msec
3140    ClipSize                = 0            ; how many shots in a Clip (0 == infinite)
3141    ClipReloadTime          = 0            ; how long to reload a Clip, msec
3142  End
3143  
3144  ;------------------------------------------------------------------------------
3145  ;*********************** Cinematic Only Unit **********************************
3146  Weapon CINE_NukeCannonGun
3147    PrimaryDamage           = 1
3148    PrimaryDamageRadius     = 1
3149    SecondaryDamage         = 1
3150    SecondaryDamageRadius   = 1
3151    ScatterRadiusVsInfantry = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3152    AttackRange             = 2000.0
3153    MinimumAttackRange      = 200.0
3154    DamageType              = EXPLOSION
3155    DeathType               = EXPLODED
3156    WeaponSpeed             = 2000         ; dist/sec 
3157    FireFX                  = WeaponFX_NukeCannonMuzzleFlash
3158    FireSound               = NukeCannonWeapon
3159    VeterancyFireFX         = HEROIC WeaponFX_HeroicNukeCannonMuzzleFlash
3160    RadiusDamageAffects     = SUICIDE SELF ALLIES ENEMIES NEUTRALS NOT_SIMILAR
3161    DelayBetweenShots       = 10000        ; time between shots, msec
3162    ClipSize                = 0            ; how many shots in a Clip (0 == infinite)
3163    ClipReloadTime          = 0            ; how long to reload a Clip, msec
3164  End
3165  
3166  ;------------------------------------------------------------------------------
3167  Weapon SCUDLauncherGunExplosive
3168    PrimaryDamage               = 300.0            
3169    PrimaryDamageRadius         = 50.0      
3170    SecondaryDamage             = 50.0          
3171    SecondaryDamageRadius       = 100.0    
3172    ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3173    AttackRange                 = 350.0
3174    MinimumAttackRange          = 200.0
3175    PreAttackDelay              = 500
3176    PreAttackType               = PER_SHOT ; Do the delay every single shot
3177    DamageType                  = EXPLOSION 
3178    DeathType                   = EXPLODED
3179    FireFX                      = FX_ScudLauncherIgnition
3180    ProjectileObject            = SCUDMissile
3181    ProjectileExhaust           = ScudMissileExhaust
3182    VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
3183    ProjectileDetonationFX      = WeaponFX_SCUDMissileDetonationExplosive
3184    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
3185    FireSound                   = ScudLauncherWeapon
3186    DelayBetweenShots           = 1
3187    ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
3188    ClipReloadTime              = 10000            ; how long to reload a Clip, msec
3189    ; Uses a clip of one to get the Reloading modelcondition
3190  
3191    ; note, these only apply to units that aren't the explicit target 
3192    ; (ie, units that just happen to "get in the way"... projectiles
3193    ; always collide with the Designated Target, regardless of these flags
3194    ProjectileCollidesWith = STRUCTURES
3195  
3196    WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
3197  End
3198  
3199  ;-----------------------------------------------------------------------------------
3200  Weapon CINE_SCUDLauncherGunExplosive
3201    PrimaryDamage               = 300.0            
3202    PrimaryDamageRadius         = 50.0      
3203    SecondaryDamage             = 50.0          
3204    SecondaryDamageRadius       = 100.0    
3205    ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3206    AttackRange                 = 350.0
3207    MinimumAttackRange          = 200.0
3208    PreAttackDelay              = 500
3209    PreAttackType               = PER_SHOT ; Do the delay every single shot
3210    DamageType                  = EXPLOSION 
3211    DeathType                   = EXPLODED
3212    FireFX                      = FX_ScudLauncherIgnition
3213    ProjectileObject            = CINE_SCUDMissile
3214    ProjectileExhaust           = ScudMissileExhaust
3215    VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
3216    ProjectileDetonationFX      = WeaponFX_SCUDMissileDetonationExplosive
3217    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
3218    FireSound                   = ScudLauncherWeapon
3219    DelayBetweenShots           = 1
3220    ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
3221    ClipReloadTime              = 10000            ; how long to reload a Clip, msec
3222    ; Uses a clip of one to get the Reloading modelcondition
3223  
3224    ; note, these only apply to units that aren't the explicit target 
3225    ; (ie, units that just happen to "get in the way"... projectiles
3226    ; always collide with the Designated Target, regardless of these flags
3227    ProjectileCollidesWith = STRUCTURES
3228  
3229    WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
3230  End
3231  
3232  ;------------------------------------------------------------------------------
3233  Weapon SCUDLauncherGunToxin
3234    PrimaryDamage = 200.0            
3235    PrimaryDamageRadius = 30.0      
3236    SecondaryDamage = 25.0          
3237    SecondaryDamageRadius = 60.0    
3238    ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3239    AttackRange = 350.0
3240    MinimumAttackRange = 200.0
3241    PreAttackDelay = 500
3242    PreAttackType = PER_SHOT ; Do the delay every single shot
3243    DamageType = EXPLOSION 
3244    DeathType = EXPLODED
3245    FireFX = FX_ScudLauncherIgnition
3246    ProjectileObject = SCUDMissile
3247    ProjectileExhaust = ScudMissileExhaust
3248    VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
3249    ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationToxin
3250    ProjectileDetonationOCL = OCL_PoisonFieldMedium
3251    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
3252    FireSound = ScudLauncherWeapon
3253    DelayBetweenShots = 1
3254    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
3255    ClipReloadTime = 10000               ; how long to reload a Clip, msec
3256    ; Uses a clip of one to get the Reloading modelcondition
3257  
3258    ; note, these only apply to units that aren't the explicit target 
3259    ; (ie, units that just happen to "get in the way"... projectiles
3260    ; always collide with the Designated Target, regardless of these flags
3261    ProjectileCollidesWith = STRUCTURES
3262  
3263  ;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
3264  End
3265  
3266  ;------------------------------------------------------------------------------
3267  Weapon SCUDLauncherGunAnthrax
3268    PrimaryDamage = 200.0            
3269    PrimaryDamageRadius = 30.0      
3270    SecondaryDamage = 25.0          
3271    SecondaryDamageRadius = 60.0    
3272    ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3273    AttackRange = 350.0
3274    MinimumAttackRange = 200.0
3275    PreAttackDelay = 500
3276    PreAttackType = PER_SHOT ; Do the delay every single shot
3277    DamageType = EXPLOSION 
3278    DeathType = EXPLODED
3279    FireFX = FX_ScudLauncherIgnition
3280    ProjectileObject = SCUDMissile
3281    ProjectileExhaust = ScudMissileExhaust
3282    VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
3283    ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationAnthrax
3284    ProjectileDetonationOCL = OCL_PoisonFieldUpgradedMedium
3285    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
3286    FireSound = ScudLauncherWeapon
3287    DelayBetweenShots = 1
3288    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
3289    ClipReloadTime = 10000               ; how long to reload a Clip, msec
3290    ; Uses a clip of one to get the Reloading modelcondition
3291  
3292    ; note, these only apply to units that aren't the explicit target 
3293    ; (ie, units that just happen to "get in the way"... projectiles
3294    ; always collide with the Designated Target, regardless of these flags
3295    ProjectileCollidesWith = STRUCTURES
3296  
3297  ;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
3298  End
3299  
3300  ;------------------------------------------------------------------------------
3301  Weapon StingerSiteDeathConcussion
3302    PrimaryDamage = 5.0            
3303    PrimaryDamageRadius = 25.0      
3304    AttackRange = 100.0
3305    DamageType = EXPLOSION         
3306    DeathType = EXPLODED
3307    WeaponSpeed = 99999.0             
3308    ProjectileObject = NONE
3309    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3310    DelayBetweenShots = 0                   ; time between shots, msec
3311    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
3312    ClipReloadTime = 0               ; how long to reload a Clip, msec
3313    AutoReloadsClip = No 
3314  End
3315  
3316  ;------------------------------------------------------------------------------
3317  ; This is the weapon used by crushing buildings.  It's supposed to kill everything it hits.
3318  Weapon ToppledStructureWeapon
3319    PrimaryDamage = 9999.0            
3320    PrimaryDamageRadius = 20.0      
3321    AttackRange = 100.0
3322    DamageType = EXPLOSION         
3323    DeathType = EXPLODED
3324    WeaponSpeed = 99999.0             
3325    ProjectileObject = NONE
3326    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3327    DelayBetweenShots = 0                   ; time between shots, msec
3328    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
3329    ClipReloadTime = 0               ; how long to reload a Clip, msec
3330    AutoReloadsClip = No 
3331  End
3332  
3333  ;------------------------------------------------------------------------------
3334  ; This is the weapon used by avalanche bits.  It's supposed to crush everything it hits.
3335  Weapon AvalancheWeapon
3336    PrimaryDamage = 9999.0            
3337    PrimaryDamageRadius = 50.0      
3338    AttackRange = 50.0
3339    DamageType = CRUSH         
3340    DeathType = CRUSHED
3341    WeaponSpeed = 99999.0             
3342    ProjectileObject = NONE
3343    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3344    DelayBetweenShots = 100                   ; time between shots, msec
3345    ClipSize = 0                        ; how many shots in a Clip (0 == infinite)
3346    ClipReloadTime = 0               ; how long to reload a Clip, msec
3347    AutoReloadsClip = Yes 
3348  End
3349  
3350  ;------------------------------------------------------------------------------
3351  Weapon NapalmMissileWeapon
3352    PrimaryDamage               = 75.0            
3353    PrimaryDamageRadius         = 5.0      
3354    SecondaryDamage             = 40.0          
3355    SecondaryDamageRadius       = 30.0
3356    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3357    DamageType                  = JET_MISSILES ; since creates FireField to do the flame damage
3358    DeathType                   = EXPLODED
3359    AttackRange                 = 320.0
3360    MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
3361    ProjectileObject            = NapalmMissile
3362    ProjectileExhaust           = MissileExhaust
3363    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
3364    FireFX                      = WeaponFX_NapalmMissile
3365    FireSound                   = MigJetNapalmWeapon
3366    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
3367    AcceptableAimDelta          = 30
3368    DelayBetweenShots           = 300             ; time between shots, msec
3369    ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
3370    ClipReloadTime              = 8000               ; how long to reload a Clip, msec
3371    AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
3372    AntiGround                  = Yes
3373    ProjectileDetonationFX      = WeaponFX_NapalmMissileDetonation
3374    ProjectileDetonationOCL     = OCL_FireFieldSmall
3375    DamageDealtAtSelfPosition   = Yes
3376    HistoricBonusTime           = 3000
3377    HistoricBonusCount          = 8
3378    HistoricBonusRadius         = 100
3379    HistoricBonusWeapon         = FirestormSmallCreationWeapon
3380    ProjectileCollidesWith      = STRUCTURES
3381    AntiAirborneVehicle         = Yes
3382    AntiAirborneInfantry        = No
3383    ShowsAmmoPips               = Yes
3384  End
3385  
3386  ;------------------------------------------------------------------------------
3387  Weapon BlackNapalmMissileWeapon
3388    PrimaryDamage               = 75.0            
3389    PrimaryDamageRadius         = 5.0      
3390    SecondaryDamage             = 50.0          
3391    SecondaryDamageRadius       = 30.0
3392    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3393    DamageType                  = JET_MISSILES ;EXPLOSION
3394    DeathType                   = EXPLODED
3395    AttackRange                 = 320.0
3396    MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
3397    ProjectileObject            = NapalmMissile
3398    ProjectileExhaust           = MissileExhaust
3399    VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
3400    FireFX                      = WeaponFX_NapalmMissile
3401    FireSound                   = MigJetNapalmWeapon
3402    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
3403    AcceptableAimDelta          = 30 
3404    DelayBetweenShots           = 300             ; time between shots, msec
3405    ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
3406    ClipReloadTime              = 5000 ;2000               ; how long to reload a Clip, msec
3407    AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
3408    AntiGround                  = Yes
3409    ProjectileDetonationFX      = WeaponFX_BlackNapalmMissileDetonation
3410    ProjectileDetonationOCL     = OCL_FireFieldUpgradedSmall
3411    DamageDealtAtSelfPosition   = Yes
3412    HistoricBonusTime           = 3000
3413    HistoricBonusCount          = 8
3414    HistoricBonusRadius         = 100
3415    HistoricBonusWeapon         = BlackNapalmFirestormSmallCreationWeapon
3416    ProjectileCollidesWith      = STRUCTURES
3417    AntiAirborneVehicle         = Yes
3418    AntiAirborneInfantry        = Yes
3419    ShowsAmmoPips               = Yes
3420  End
3421  
3422  ;------------------------------------------------------------------------------
3423  Weapon BattleshipBogusGun
3424    ; We need to have the weapon do some damage, or attacking will not occur because it's
3425    ; rejected as not having any kind of weapon that does damage
3426    PrimaryDamage = 0.00001         ; does no damage, because the gun firing is only for show, anyway...
3427                                    ; please DON'T adjust this value. to adjust the damage really done by battleships,
3428                                    ; adjust the damage values in BattleshipTargetDamagedWeapon!
3429    PrimaryDamageRadius = 0.0       
3430    AttackRange = 99999.0
3431    DamageType = UNRESISTABLE
3432    DeathType = NORMAL
3433    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
3434    ProjectileObject = NONE
3435    FireFX = WeaponFX_BattleshipBogusGun
3436    FireSound = BattleshipWeapon
3437    RadiusDamageAffects = ENEMIES NEUTRALS
3438    DelayBetweenShots = 750         ; time between shots, msec
3439    ClipSize = 3                    ; how many shots in a Clip (0 == infinite)
3440    ClipReloadTime = 1500           ; how long to reload a Clip, msec
3441  End
3442  
3443  ;------------------------------------------------------------------------------
3444  Weapon BattleshipTargetDamagedWeapon
3445    PrimaryDamage = 100.0
3446    PrimaryDamageRadius = 30.0
3447    SecondaryDamage = 30.0
3448    SecondaryDamageRadius = 65.0
3449    AttackRange = 0.0
3450    DamageType = EXPLOSION
3451    DeathType = EXPLODED
3452    WeaponSpeed = 999999
3453    ProjectileObject = NONE
3454    FireFX = WeaponFX_BattleshipTargetExplode
3455    FireSound = ExplosionBattleshipTarget
3456    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3457    DelayBetweenShots = 0               ; time between shots, msec
3458    ClipSize = 0                      ; how many shots in a Clip (0 == infinite)
3459    ClipReloadTime = 0                ; how long to reload a Clip, msec
3460  End
3461  
3462  ;------------------------------------------------------------------------------
3463  Weapon StructureMineWeapon
3464    PrimaryDamage = 100.0            
3465    PrimaryDamageRadius = 3.0      
3466    SecondaryDamage = 100.0          
3467    SecondaryDamageRadius = 5.0    
3468    AttackRange = 0.0
3469    DamageType = LAND_MINE
3470    DeathType = EXPLODED
3471    WeaponSpeed = 99999.0             
3472    ProjectileObject = NONE
3473    FireFX = WeaponFX_MineDetonation
3474    RadiusDamageAffects = ENEMIES NEUTRALS
3475    DelayBetweenShots = 0              
3476    ClipSize = 1                        
3477    ClipReloadTime = 0                  
3478    AutoReloadsClip = No 
3479  End
3480  
3481  ;------------------------------------------------------------------------------
3482  Weapon ClusterMineWeapon
3483    PrimaryDamage = 50.0            
3484    PrimaryDamageRadius = 3.0      
3485    SecondaryDamage = 100.0          
3486    SecondaryDamageRadius = 5.0    
3487    AttackRange = 0.0
3488    DamageType = LAND_MINE
3489    DeathType = EXPLODED
3490    WeaponSpeed = 99999.0             
3491    ProjectileObject = NONE
3492    FireFX = WeaponFX_MineDetonation
3493    RadiusDamageAffects = ENEMIES NEUTRALS
3494    DelayBetweenShots = 0              
3495    ClipSize = 1                        
3496    ClipReloadTime = 0                  
3497    AutoReloadsClip = No 
3498  End
3499  
3500  ;------------------------------------------------------------------------------
3501  Weapon BattleDroneMachineGun
3502    PrimaryDamage = 1
3503    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
3504    AttackRange = 110.0
3505    DamageType = SMALL_ARMS
3506    DeathType = NORMAL
3507    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
3508    ProjectileObject = NONE
3509    FireFX = WeaponFX_TechnicalGunFire
3510    FireSound = BattleDroneWeapon
3511    RadiusDamageAffects = ENEMIES NEUTRALS
3512    DelayBetweenShots = 100         ; time between shots, msec
3513    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3514    ClipReloadTime = 0              ; how long to reload a Clip, msec
3515    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; APBullets
3516  End
3517  
3518  
3519  
3520  ;------------------------------------------------------------------------------
3521  ;----  ANGRY MOB  WEAPONS  ----------------------------------------------------
3522  ;------------------------------------------------------------------------------
3523  Weapon GLAAngryMobNexusHarmlessWeapon 
3524    
3525    ;;; allows AI to set targets and victims and condition states
3526    ;;; without really doing any harm 
3527    
3528    PrimaryDamage = 0.001
3529    PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
3530    AttackRange = 90.0 ;70.0 ;; small so the whole mob can get in close
3531    DamageType = UNRESISTABLE
3532    DeathType = NORMAL
3533    WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
3534    ProjectileObject = NONE
3535    FireFX = NONE
3536    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3537    DelayBetweenShots = 99999        ; time between shots, msec
3538    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3539    ClipReloadTime = 0              ; how long to reload a Clip, msec
3540    WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; Armor Piercing Bullets
3541  End
3542  
3543  ;------------------------------------------------------------------------------
3544  Weapon GLAAngryMobRockProjectileWeapon 
3545    PrimaryDamage = 40.0 ;10.0
3546    PrimaryDamageRadius = 1.0       
3547    AttackRange = 100.0 
3548    DamageType = MOLOTOV_COCKTAIL  ;SMALL_ARMS
3549    DeathType = NORMAL
3550    WeaponSpeed = 130          ; dist/sec (huge value == effectively instant)
3551    ProjectileObject = GLAAngryMobRockProjectileObject
3552    FireFX = NONE
3553    FireSound = AngryMobWeaponMolotov
3554    RadiusDamageAffects = ENEMIES NEUTRALS ALLIES
3555    DelayBetweenShots = 500 ;3000        ; time between shots, msec
3556    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3557    ClipReloadTime = 0              ; how long to reload a Clip, msec
3558    PreAttackDelay = 500 ;2000       ; linked to the length of throw animation
3559    PreAttackType = PER_SHOT ; Do the delay every single shot
3560    ProjectileCollidesWith = STRUCTURES WALLS 
3561  
3562  End
3563  ;------------------------------------------------------------------------------
3564  Weapon GLAAngryMobMolotovCocktailProjectileWeapon 
3565    PrimaryDamage = 40.0 ;40.0          
3566    PrimaryDamageRadius = 11.0       
3567    AttackRange = 100.0 
3568    MinimumAttackRange = 12; 40.0
3569    DamageType = MOLOTOV_COCKTAIL  ;used only by this weapon.  Splits off so Dragon Tanks and Toxin Trucks are resistant.  
3570    DeathType = NORMAL
3571    WeaponSpeed = 60 ;          
3572    ProjectileObject = GLAAngryMobMolotovCocktailProjectileObject
3573    FireFX = NONE
3574    RadiusDamageAffects = ENEMIES NEUTRALS ALLIES
3575    DelayBetweenShots = 500 ;3000        ; time between shots, msec
3576    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3577    ClipReloadTime = 0              ; how long to reload a Clip, msec
3578    PreAttackDelay = 500 ;2000    ; linked to the length of throw animation
3579    PreAttackType = PER_SHOT ; Do the delay every single shot
3580    ProjectileDetonationFX = WeaponFX_MolotovCocktailDetonation
3581    MaxTargetPitch = 57 ; this is important so that they do not lob the bottles on their mobmates
3582  
3583    ProjectileCollidesWith = STRUCTURES WALLS 
3584  End
3585  
3586  
3587  ;------------------------------------------------------------------------------
3588  Weapon GLAAngryMobPistolWeapon
3589    PrimaryDamage         = 10.0
3590    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
3591    AttackRange           = 100.0
3592    DamageType            = MOLOTOV_COCKTAIL  ;SMALL_ARMS
3593    DeathType             = NORMAL
3594    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
3595    ProjectileObject      = NONE
3596    FireFX                = WeaponFX_GenericMachineGunFire
3597    VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
3598    FireSound             = AngryMobWeaponPistol 
3599    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
3600    DelayBetweenShots     = 250               ; time between shots, msec
3601    ClipSize              = 8                    ; how many shots in a Clip (0 == infinite)
3602    ClipReloadTime        = 3000              ; how long to reload a Clip, msec
3603    AutoReloadsClip       = Yes 
3604  End
3605  
3606  ;------------------------------------------------------------------------------
3607  Weapon GLAAngryMobAK47Weapon 
3608    PrimaryDamage         = 20.0 ;8.0
3609    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
3610    AttackRange           = 120.0
3611    DamageType            = MOLOTOV_COCKTAIL  ;SMALL_ARMS
3612    DeathType             = NORMAL
3613    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
3614    ProjectileObject      = NONE
3615    FireFX                = WeaponFX_RangerAdvancedCombatRifleFire
3616    VeterancyFireFX       = HEROIC WeaponFX_HeroicRangerAdvancedCombatRifleFire
3617    FireSound             = AngryMobWeaponAK47
3618    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
3619    DelayBetweenShots     = 250         ; time between shots, msec
3620    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
3621    ClipReloadTime        = 0              ; how long to reload a Clip, msec
3622    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; Armor Piercing Bullets
3623  End
3624  
3625  ;------------------------------------------------------------------------------
3626  Weapon GLAAngryMobAK47NoDamageWeapon 
3627    PrimaryDamage         = 0.001 ; THIS IS A SPECIAL NO-DAMAGE AK47
3628    PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
3629    AttackRange           = 120.0
3630    DamageType            = MOLOTOV_COCKTAIL  ;SMALL_ARMS
3631    DeathType             = NORMAL
3632    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
3633    ProjectileObject      = NONE
3634    FireFX                = WeaponFX_RangerAdvancedCombatRifleFire
3635    VeterancyFireFX       = HEROIC WeaponFX_HeroicRangerAdvancedCombatRifleFire
3636    FireSound             = AngryMobWeaponAK47
3637    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
3638    DelayBetweenShots     = 99999         ; time between shots, msec
3639    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
3640    ClipReloadTime        = 0              ; how long to reload a Clip, msec
3641    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; Armor Piercing Bullets
3642  End
3643  
3644  ;------------------------------------------------------------------------------
3645  Weapon WorkerMineDisarmingWeapon 
3646    PrimaryDamage = 1.0             ; this isn't really used, but must be nonzero for targeting to work well
3647    AttackRange = 1.0
3648    DamageType = DISARM
3649    DeathType = NORMAL
3650    ProjectileObject = NONE
3651    FireFX = WeaponFX_WorkerMineDisarming
3652    DelayBetweenShots = 1000        ; time between shots, msec
3653    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3654    ClipReloadTime = 0              ; how long to reload a Clip, msec
3655    AntiGround = No
3656    AntiProjectile = No
3657    AntiSmallMissile = No
3658    AntiMine = Yes
3659    PreAttackDelay = 1000           ; we have to wave our magic wand over it a bit
3660    PreAttackType = PER_SHOT ; Do the delay every single shot
3661    ContinueAttackRange = 100        ; after disarming a mine, look for additional mines within this dist to disarm
3662  End
3663  
3664  ;------------------------------------------------------------------------------
3665  Weapon DozerMineDisarmingWeapon 
3666    PrimaryDamage = 1.0             ; this isn't really used, but must be nonzero for targeting to work well
3667    AttackRange = 1.0
3668    DamageType = DISARM
3669    DeathType = NORMAL
3670    ProjectileObject = NONE
3671    FireFX = WeaponFX_DozerMineDisarming
3672    DelayBetweenShots = 0        ; time between shots, msec
3673    ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
3674    ClipReloadTime = 4000             ; how long to reload a Clip, msec
3675    AntiGround = No
3676    AntiProjectile = No
3677    AntiSmallMissile = No
3678    AntiMine = Yes
3679    PreAttackDelay = 1200           ; this is the natural duration of PRE scooping animation
3680    PreAttackType = PER_ATTACK ; Do the delay every attack
3681    ContinueAttackRange = 100        ; after disarming a mine, look for additional mines within this dist to disarm
3682  End
3683  
3684  
3685  ;------------------------------------------------------------------------------
3686  Weapon DemoTrapDetonationWeapon
3687    PrimaryDamage = 600.0            
3688    PrimaryDamageRadius = 25.0      
3689    SecondaryDamage = 400.0          
3690    SecondaryDamageRadius = 50.0    
3691    DamageType = EXPLOSION
3692    DeathType = EXPLODED
3693    WeaponSpeed = 99999.0             
3694    FireFX = WeaponFX_DemoTrapDetonation
3695    PlayFXWhenStealthed = Yes
3696    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
3697    DelayBetweenShots = 0              
3698    ClipSize = 1                        
3699    ClipReloadTime = 0                  
3700    AutoReloadsClip = No 
3701  End
3702  
3703  ;------------------------------------------------------------------------------
3704  Weapon DummyWeapon
3705    ;Nothing -- dummy weapon
3706  End
3707  
3708  ;------------------------------------------------------------------------------
3709  ; This weapon kills itself (to presumably trigger detonations on death)
3710  Weapon SuicideWeapon
3711    LeechRangeWeapon = Yes
3712    AttackRange = 1.0
3713    PrimaryDamage = 999999.0            
3714    PrimaryDamageRadius = 1.0      
3715    DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
3716    RadiusDamageAffects = SELF SUICIDE
3717    DamageType = EXPLOSION
3718    DeathType = SUICIDED
3719    WeaponSpeed = 99999.0             
3720    DelayBetweenShots = 0              
3721    ClipSize = 1                        
3722    ClipReloadTime = 0                  
3723    AutoReloadsClip = No 
3724  End
3725  
3726  ;------------------------------------------------------------------------------
3727  ; This weapon kills itself (to presumably trigger detonations on death)
3728  Weapon TerroristSuicideWeapon
3729    LeechRangeWeapon = Yes
3730    AttackRange = 1.0
3731    PrimaryDamage = 999999.0            
3732    PrimaryDamageRadius = 1.0      
3733    DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
3734    RadiusDamageAffects = SELF SUICIDE
3735    DamageType = EXPLOSION
3736    DeathType = SUICIDED
3737    WeaponSpeed = 99999.0             
3738    DelayBetweenShots = 0              
3739    ClipSize = 1                        
3740    ClipReloadTime = 0                  
3741    AutoReloadsClip = No 
3742    ;PreAttackDelay = 600             ;766 matches the animation timing his detonating
3743  End
3744  
3745  ;------------------------------------------------------------------------------
3746  Weapon ConvoyTruckSuicideWeapon
3747    LeechRangeWeapon = Yes
3748    AttackRange = 1.0
3749    PrimaryDamage = 999999.0            
3750    PrimaryDamageRadius = 1.0      
3751    DamageDealtAtSelfPosition = Yes 
3752    RadiusDamageAffects = SELF SUICIDE
3753    DamageType = EXPLOSION
3754    DeathType = SUICIDED
3755    WeaponSpeed = 99999.0             
3756    DelayBetweenShots = 0              
3757    ClipSize = 1                        
3758    ClipReloadTime = 0                  
3759    AutoReloadsClip = No 
3760  
3761    FireSound = MisGLA07Convoy16
3762  End
3763  
3764  ;------------------------------------------------------------------------------
3765  ;The basic explosive damage inflicted to nearby units when detonated.
3766  ;------------------------------------------------------------------------------
3767  Weapon BombTruckDefaultBombDamage
3768    PrimaryDamage = 1000.0            
3769    PrimaryDamageRadius = 40.0      
3770    SecondaryDamage = 100.0          
3771    SecondaryDamageRadius = 65.0   
3772    DamageType = EXPLOSION
3773    DeathType = EXPLODED
3774    WeaponSpeed = 99999.0             
3775    ProjectileObject = NONE
3776    DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
3777    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
3778    DelayBetweenShots = 0              
3779    ClipSize = 1                        
3780    ClipReloadTime = 0                  
3781    AutoReloadsClip = No 
3782    ;**** DON'T USE ANY EFFECTS!!! ****
3783  End
3784  
3785  ;------------------------------------------------------------------------------
3786  ;A larger explosive damage inflicted immediately to nearby units if the 
3787  ;bomb-truck has the high-explosive upgrade.
3788  ;------------------------------------------------------------------------------
3789  Weapon BombTruckHighExplosionBombDamage
3790    PrimaryDamage = 2000.0            
3791    PrimaryDamageRadius = 50.0      
3792    SecondaryDamage = 200.0          
3793    SecondaryDamageRadius = 85.0 
3794    DamageType = EXPLOSION
3795    DeathType = EXPLODED
3796    ProjectileObject = NONE
3797    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
3798    DelayBetweenShots = 0                   ; time between shots, msec
3799    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
3800    ClipReloadTime = 0                      ; how long to reload a Clip, msec
3801    AutoReloadsClip = No 
3802  
3803    AntiGround = Yes
3804    DamageDealtAtSelfPosition = Yes
3805    WeaponBonus = PLAYER_UPGRADE DAMAGE 125%
3806    ;**** DON'T USE ANY EFFECTS!!! ****
3807  End
3808  
3809  ;------------------------------------------------------------------------------
3810  ;These do no damage at all -- just effects and setting up toxic fields
3811  ;------------------------------------------------------------------------------
3812  Weapon BombTruckDefaultBombEffect
3813    FireFX = WeaponFX_BombTruckDefaultBombDetonation
3814    FireSound = NoSound ; BombTruckBioBombDetonation
3815  End
3816  
3817  ;------------------------------------------------------------------------------
3818  ;These do no damage at all -- just effects and setting up toxic fields
3819  ;------------------------------------------------------------------------------
3820  Weapon BombTruckBioBombEffect
3821    FireFX = WeaponFX_BombTruckBioBombDetonation
3822    FireOCL = OCL_PoisonFieldMedium
3823    FireSound = NoSound ; BombTruckBioBombDetonation
3824  End
3825  
3826  ;------------------------------------------------------------------------------
3827  ;These do no damage at all -- just effects and setting up toxic fields
3828  ;------------------------------------------------------------------------------
3829  Weapon BombTruckAnthraxBombEffect
3830    FireFX = WeaponFX_BombTruckAnthraxBombDetonation
3831    FireOCL = OCL_PoisonFieldUpgradedMedium
3832    FireSound = NoSound ; BombTruckBioBombDetonation
3833  End
3834  
3835  ;------------------------------------------------------------------------------
3836  ;These do no damage at all -- just effects and setting up toxic fields
3837  ;------------------------------------------------------------------------------
3838  Weapon BombTruckHighExplosiveBombEffect
3839    FireFX = WeaponFX_BombTruckHighExplosiveBombDetonation
3840    FireSound = NoSound ; BombTruckBioBombDetonation
3841  End
3842  
3843  ;------------------------------------------------------------------------------
3844  ;These do no damage at all -- just effects and setting up toxic fields
3845  ;------------------------------------------------------------------------------
3846  Weapon BombTruckHighExplosiveBioBombEffect
3847    FireFX = WeaponFX_BombTruckHighExplosiveBioBombDetonation
3848    FireOCL = OCL_PoisonFieldMedium
3849    FireSound = NoSound ; BombTruckBioBombDetonation
3850  End
3851  
3852  ;------------------------------------------------------------------------------
3853  ;These do no damage at all -- just effects and setting up toxic fields
3854  ;------------------------------------------------------------------------------
3855  Weapon BombTruckHighExplosiveAnthraxBombEffect
3856    FireFX = WeaponFX_BombTruckHighExplosiveAnthraxBombDetonation
3857    FireOCL = OCL_PoisonFieldUpgradedMedium
3858    FireSound = NoSound ; BombTruckBioBombDetonation
3859  End
3860  
3861  ;------------------------------------------------------------------------------
3862  Weapon EruptionOfToxicGooWeaponLarge
3863    PrimaryDamage = 60.0
3864    PrimaryDamageRadius = 30.0
3865    SecondaryDamage = 20.0
3866    SecondaryDamageRadius = 55.0
3867    AttackRange = 0.0
3868    DamageType = POISON
3869    DeathType = POISONED
3870    WeaponSpeed = 999999
3871    ProjectileObject = NONE
3872    FireFX = WeaponFX_EruptionOfToxicGooLarge
3873    FireSound = ExplosionBattleshipTarget
3874    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3875    DelayBetweenShots = 0               ; time between shots, msec
3876    ClipSize = 0                      ; how many shots in a Clip (0 == infinite)
3877    ClipReloadTime = 0                ; how long to reload a Clip, msec
3878  End
3879  
3880  ;------------------------------------------------------------------------------
3881  Weapon EruptionOfToxicGooWeaponSmall
3882    PrimaryDamage = 30.0
3883    PrimaryDamageRadius = 30.0
3884    SecondaryDamage = 20.0
3885    SecondaryDamageRadius = 55.0
3886    AttackRange = 0.0
3887    DamageType = POISON
3888    DeathType = POISONED
3889    WeaponSpeed = 999999
3890    ProjectileObject = NONE
3891    FireFX = WeaponFX_EruptionOfToxicGooSmall
3892    FireSound = ExplosionBattleshipTarget
3893    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3894    DelayBetweenShots = 0               ; time between shots, msec
3895    ClipSize = 0                      ; how many shots in a Clip (0 == infinite)
3896    ClipReloadTime = 0                ; how long to reload a Clip, msec
3897  End
3898  
3899  
3900  ;------------------------------------------------------------------------------
3901  Weapon MilitiaTankGun
3902    PrimaryDamage = 35.0
3903    PrimaryDamageRadius = 5.0
3904    ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3905    AttackRange = 120.0
3906    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
3907    MaxTargetPitch = 15                          ; ditto
3908    DamageType = ARMOR_PIERCING
3909    DeathType = NORMAL
3910    WeaponSpeed = 400                           ; dist/sec 
3911    WeaponRecoil = 5                            ; angle to deflect the model when firing
3912    ProjectileObject = GenericTankShell
3913    FireFX = WeaponFX_GenericTankGunNoTracer
3914    ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
3915    FireSound = MilitiaTankWeapon
3916    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3917    DelayBetweenShots = 2000               ; time between shots, msec
3918    ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
3919    ClipReloadTime = 0              ; how long to reload a Clip, msec
3920     
3921    ; note, these only apply to units that aren't the explicit target 
3922    ; (ie, units that just happen to "get in the way"... projectiles
3923    ; always collide with the Designated Target, regardless of these flags
3924    ProjectileCollidesWith = STRUCTURES WALLS 
3925  End
3926  
3927  ;------------------------------------------------------------------------------
3928  Weapon ArtilleryBarrageDamageWeapon
3929    PrimaryDamage         = 105.0     ;GS changed to what it was secretly doing pending review
3930    PrimaryDamageRadius   = 50.0      
3931    AttackRange           = 100.0
3932    DamageType            = EXPLOSION         
3933    DeathType             = EXPLODED
3934    WeaponSpeed           = 99999.0             
3935    ProjectileDetonationFX = FX_ArtilleryBarrage
3936    RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES
3937    DelayBetweenShots     = 0    ; time between shots, msec
3938    ClipSize              = 1    ; how many shots in a Clip (0 == infinite)
3939    ClipReloadTime        = 0    ; how long to reload a Clip, msec
3940    AutoReloadsClip       = No 
3941  End
3942  
3943  ;------------------------------------------------------------------------------
3944  Weapon VehicleCrashesIntoBuildingWeapon
3945    PrimaryDamage         = 30.0        ; token amount of damage    
3946    PrimaryDamageRadius   = 30.0      
3947    AttackRange           = 0
3948    DamageType            = EXPLOSION
3949    DeathType             = EXPLODED
3950    ProjectileObject      = NONE
3951    FireFX                = FX_VehicleCrashesIntoBuilding
3952    FireOCL               = OCL_VehicleCrashesIntoBuilding
3953    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
3954  End
3955  
3956  ;------------------------------------------------------------------------------
3957  Weapon VehicleCrashesIntoNonBuildingWeapon
3958    PrimaryDamage         = 30.0        ; token amount of damage    
3959    PrimaryDamageRadius   = 30.0      
3960    AttackRange           = 0
3961    DamageType            = CRUSH
3962    DeathType             = CRUSHED
3963    ProjectileObject      = NONE
3964    ; no FX or OCL.
3965    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
3966  End
3967  
3968  ; ************** Nova Weapons **************
3969  
3970  ;------------------------------------------------------------------------------
3971  Weapon CobraTankGun
3972    PrimaryDamage = 10.0
3973    PrimaryDamageRadius = 5.0
3974    ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
3975    AttackRange = 150.0
3976    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
3977    MaxTargetPitch = 15                          ; ditto
3978    DamageType = ARMOR_PIERCING
3979    DeathType = NORMAL
3980    WeaponSpeed = 400                           ; dist/sec 
3981    WeaponRecoil = 3                            ; angle to deflect the model when firing
3982    ProjectileObject = ScorpionTankShell
3983    FireFX = WeaponFX_GenericTankGunNoTracerSmall
3984    VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
3985    ;ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
3986    FireSound = ScorpionTankWeapon
3987    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
3988    DelayBetweenShots = 0        ; time between shots, msec
3989    ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
3990    ClipReloadTime = 1000              ; how long to reload a Clip, msec
3991    ProjectileCollidesWith = STRUCTURES WALLS 
3992  End
3993  
3994  ;------------------------------------------------------------------------------
3995  Weapon NeutronMissileWeaponOP
3996    PrimaryDamage = 0               ; not used for this weapon (it's "special")            
3997    PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
3998    AttackRange = 99999             ; not used for this weapon (it's "special")
3999    DamageType = RADIATION          ; not used for this weapon (it's "special")
4000    DeathType = NORMAL
4001    WeaponSpeed = 99999             ; not used for this weapon (it's "special")
4002    ProjectileObject = NeutronMissileOP
4003    ProjectileExhaust = NeutronMissileExhaust
4004    FireFX = WeaponFX_NeutronMissile
4005    ProjectileDetonationFX = None   ; not used for this weapon (it's "special")
4006    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
4007    DelayBetweenShots = 0           ; not used for this weapon (it's "special")
4008    ClipSize = 1                    ; not used for this weapon (it's "special")
4009    ClipReloadTime = 0              ; not used for this weapon (it's "special")
4010    AutoReloadsClip = No            ; not used for this weapon (it's "special")
4011  End
4012  
4013  ;------------------------------------------------------------------------------
4014  ;Bomb Truck Nuke Warhead -- effects and weapon
4015  ;------------------------------------------------------------------------------
4016  Weapon BombTruckNukeWarhead
4017    PrimaryDamage = 3000.0            
4018    PrimaryDamageRadius = 100.0      
4019    SecondaryDamage = 300.0          
4020    SecondaryDamageRadius = 150.0 
4021    DamageType = EXPLOSION
4022    DeathType = EXPLODED
4023    ProjectileObject = NONE
4024    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
4025    DelayBetweenShots = 0                   ; time between shots, msec
4026    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
4027    ClipReloadTime = 0                      ; how long to reload a Clip, msec
4028    AutoReloadsClip = No 
4029  
4030    AntiGround = Yes
4031    DamageDealtAtSelfPosition = Yes
4032    
4033    FireFX = FX_BombTruckNuke
4034    FireOCL = OCL_BombTruckNukeRadiationAndVision
4035    FireSound = NoSound
4036  End
4037  
4038  ;------------------------------------------------------------------------------
4039  Weapon ToppledPropagandaTowerWeapon
4040    PrimaryDamage = 20.0            
4041    PrimaryDamageRadius = 5.0      
4042    AttackRange = 75.0
4043    DamageType = EXPLOSION         
4044    DeathType = EXPLODED
4045    WeaponSpeed = 99999.0             
4046    ProjectileObject = NONE
4047    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
4048    DelayBetweenShots = 0                   ; time between shots, msec
4049    ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
4050    ClipReloadTime = 0               ; how long to reload a Clip, msec
4051    AutoReloadsClip = No 
4052  End
4053  
4054  ;--------------------------------------------------------------------------------
4055  Weapon NeutronBombWeapon
4056    PrimaryDamage       = 1000.0            
4057    PrimaryDamageRadius = 100.0      
4058    AttackRange         = 100.0
4059    DamageType          = EXPLOSION         
4060    DeathType           = EXPLODED
4061    WeaponSpeed         = 99999.0
4062    FireOCL             = OCL_NeutronEmission             
4063    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
4064    DelayBetweenShots   = 0                   ; time between shots, msec
4065    ClipSize            = 1                   ; how many shots in a Clip (0 == infinite)
4066    ClipReloadTime      = 0                   ; how long to reload a Clip, msec
4067    AutoReloadsClip     = No 
4068  End
4069  
4070  ;------------------------------------------------------------------------------
4071  Weapon NeutronBombEmissionFieldWeapon
4072    PrimaryDamage = 1.0
4073    PrimaryDamageRadius = 300.0      
4074    AttackRange = 15.0
4075    MinimumAttackRange = 10.0
4076    DamageType = KILL_PILOT
4077    DeathType = NORMAL
4078    WeaponSpeed = 600                     ;  dist/sec 
4079  
4080    FireFX = WeaponFX_NeutronEmissionWeapon ; This FxList is marked UseCallersRadius,
4081    ; so the damage range can be tweaked and it will change the effect's radius too
4082  
4083    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
4084    DelayBetweenShots = 9000    ; only fires twice during neutron field lifetime
4085  End
4086  
4087  ;------------------------------------------------------------------------------
4088  Weapon NeutronBombEmissionFieldWeaponPoison
4089    PrimaryDamage = 20.0
4090    PrimaryDamageRadius = 300.0      
4091    AttackRange = 15.0
4092    MinimumAttackRange = 10.0
4093    DamageType = SNIPER  ;is not supposed to do any damage to buildings or vehicles ;EXTRA_2 ;RADIATION
4094    DeathType = NORMAL
4095    WeaponSpeed = 600                     ;  dist/sec 
4096  
4097    FireFX = WeaponFX_NeutronEmissionWeapon ; This FxList is marked UseCallersRadius,
4098    ; so the damage range can be tweaked and it will change the effect's radius too
4099  
4100    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
4101    DelayBetweenShots = 500                ; time between shots, msec
4102  End
4103  
4104  ;------------------------------------------------------------------------------
4105  Weapon TomahawkMissileWeaponB52
4106    PrimaryDamage               = 650.0            
4107    PrimaryDamageRadius         = 50.0      
4108    SecondaryDamage             = 250.0          
4109    SecondaryDamageRadius       = 75.0
4110    AttackRange                 = 1700.0    ;slightly further than that of the DeliveryDistance for the OCL
4111    DamageType                  = EXPLOSION 
4112    DeathType                   = EXPLODED
4113    FireFX                      = FX_TomahawkIgnition
4114    ProjectileObject            = TomahawkMissileFromB52
4115    ProjectileExhaust           = TomahawkMissileExhaust
4116    VeterancyProjectileExhaust  = HEROIC HeroicTomahawkMissileExhaust
4117    ProjectileDetonationFX      = WeaponFX_BombTruckDefaultBombDetonation
4118    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS ;NOT_SIMILAR
4119    FireSound                   = TomahawkWeapon
4120    DelayBetweenShots           = Min:300 Max:1000
4121    ClipSize                    = 8                   ; how many shots in a Clip (0 == infinite)
4122    ClipReloadTime              = 100               ; how long to reload a Clip, msec
4123    ProjectileCollidesWith = STRUCTURES
4124    ScatterRadius   = 0
4125  
4126    ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
4127    ; These specific points are an even distribution simulating a 150 ScatterRadius.
4128    ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
4129    ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.
4130    ScatterTargetScalar = 150; replaces the ScatterRadius, above, for scaling this table, below
4131    ScatterTarget = X: 0.000 Y: 0.133
4132    ScatterTarget = X: 0.133 Y:-0.200
4133    ScatterTarget = X:-0.067 Y: 0.667
4134    ScatterTarget = X: 0.300 Y: 0.300
4135    ScatterTarget = X: 0.767 Y: 0.000       
4136    ScatterTarget = X: 0.500 Y:-0.567        
4137    ScatterTarget = X:-0.333 Y:-0.800        
4138    ScatterTarget = X:-0.600 Y:-0.1333
4139  End
4140  
4141  ;------------------------------------------------------------------------------
4142  Weapon NapalmStrikeWeapon
4143    PrimaryDamage               = 75.0            
4144    PrimaryDamageRadius         = 5.0      
4145    SecondaryDamage             = 50.0          
4146    SecondaryDamageRadius       = 30.0
4147    DamageType                  = JET_MISSILES
4148    DeathType                   = EXPLODED
4149    AttackRange                 = 320.0
4150    ProjectileObject            = NapalmMissile
4151    ProjectileExhaust           = MissileExhaust
4152    FireFX                      = WeaponFX_NapalmMissile
4153    FireSound                   = MigJetNapalmWeapon
4154    RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
4155    AcceptableAimDelta          = 30 
4156    DelayBetweenShots           = 300             ; time between shots, msec
4157    ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
4158    ClipReloadTime              = 1000              ; how long to reload a Clip, msec
4159    AntiGround                  = Yes
4160    ProjectileDetonationFX      = WeaponFX_BlackNapalmMissileDetonation
4161    ProjectileDetonationOCL     = OCL_FireFieldUpgradedSmall
4162    DamageDealtAtSelfPosition   = Yes
4163    HistoricBonusTime           = 1000
4164    HistoricBonusCount          = 8
4165    HistoricBonusRadius         = 100
4166    HistoricBonusWeapon         = BlackNapalmFirestormSmallCreationWeapon
4167    ProjectileCollidesWith      = STRUCTURES
4168    AntiAirborneVehicle         = Yes
4169    AntiAirborneInfantry        = Yes
4170  End
4171  
4172  ;------------------------------------------------------------------------------
4173  Weapon MammothTankGun
4174    PrimaryDamage = 75
4175    PrimaryDamageRadius = 4.0
4176    ScatterRadiusVsInfantry = 8.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
4177    SecondaryDamage = 15.0
4178    SecondaryDamageRadius = 8.0
4179    AttackRange = 150.0
4180    MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
4181    MaxTargetPitch = 15                          ; ditto
4182    DamageType = ARMOR_PIERCING
4183    DeathType = NORMAL
4184    WeaponSpeed = 300                           ; dist/sec 
4185    WeaponRecoil = 5                            ; angle to deflect the model when firing
4186    ProjectileObject = OverlordTankShell
4187    FireFX            = WeaponFX_GenericTankGunNoTracer
4188    VeterancyFireFX   = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
4189    ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
4190    FireSound = PaladinTankWeapon
4191    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
4192    DelayBetweenShots = 175              ; time between shots, msec
4193    ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
4194    ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
4195    ClipReloadTime = 2000              ; how long to reload a Clip, msec
4196    ProjectileCollidesWith = STRUCTURES WALLS 
4197  End
4198  
4199  ;------------------------------------------------------------------------------
4200  Weapon TechnicalRiderAK47
4201    PrimaryDamage         = 6.0
4202    PrimaryDamageRadius   = 0.0
4203    AttackRange           = 100.0
4204    DamageType            = MOLOTOV_COCKTAIL ;SMALL_ARMS
4205    DeathType             = NORMAL
4206    WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
4207    ProjectileObject      = NONE
4208    FireFX                = WeaponFX_RangerAdvancedCombatRifleFire
4209    VeterancyFireFX       = HEROIC WeaponFX_HeroicRangerAdvancedCombatRifleFire
4210    FireSound             = AngryMobWeaponAK47
4211    RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
4212    DelayBetweenShots     = 200         ; time between shots, msec
4213    ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
4214    ClipReloadTime        = 0              ; how long to reload a Clip, msec
4215    WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; Armor Piercing Bullets
4216  End
4217  
4218  ;------------------------------------------------------------------------------
4219  Weapon SuicidePlaneBomb
4220    PrimaryDamage = 1000.0            
4221    PrimaryDamageRadius = 20.0      
4222    SecondaryDamage = 300.0          
4223    SecondaryDamageRadius = 40.0 
4224    DamageType = EXPLOSION
4225    DeathType = EXPLODED
4226    ProjectileObject = NONE
4227    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
4228    DelayBetweenShots = 0                   ; time between shots, msec
4229    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
4230    ClipReloadTime = 0                      ; how long to reload a Clip, msec
4231    AutoReloadsClip = No 
4232  
4233    AntiGround = Yes
4234    DamageDealtAtSelfPosition = Yes
4235    
4236    FireFX = WeaponFX_BombTruckDefaultBombDetonation
4237    FireSound = NoSound
4238  End
4239  
4240  ;------------------------------------------------------------------------------
4241  Weapon SuicidePlaneBombUpgraded
4242    PrimaryDamage = 1000.0            
4243    PrimaryDamageRadius = 20.0      
4244    SecondaryDamage = 300.0          
4245    SecondaryDamageRadius = 40.0 
4246    DamageType = EXPLOSION
4247    DeathType = EXPLODED
4248    ProjectileObject = NONE
4249    RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
4250    DelayBetweenShots = 0                   ; time between shots, msec
4251    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
4252    ClipReloadTime = 0                      ; how long to reload a Clip, msec
4253    AutoReloadsClip = No 
4254  
4255    AntiGround = Yes
4256    DamageDealtAtSelfPosition = Yes
4257    
4258    FireFX = WeaponFX_BombTruckAnthraxBombDetonation
4259    FireOCL = OCL_PoisonFieldUpgradedMedium
4260    FireSound = NoSound
4261  End
4262  
4263  ;------------------------------------------------------------------------------
4264  Weapon ToxinTractorExplosionEffect
4265    PrimaryDamage = 0.0
4266    PrimaryDamageRadius = 1.0      
4267    AttackRange = 100.0
4268    DamageType = EXPLOSION 
4269    DeathType = EXPLODED
4270    WeaponSpeed = 99999.0
4271    ProjectileObject = NONE
4272    FireFX = FX_ToxinTruckExplosionOneFinal
4273    FireOCL = OCL_PoisonFieldSmall
4274    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
4275    DelayBetweenShots = 0                   ; time between shots, msec
4276    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
4277    ClipReloadTime = 0                      ; how long to reload a Clip, msec
4278    AutoReloadsClip = No 
4279    AntiGround = Yes
4280    DamageDealtAtSelfPosition = Yes
4281  End
4282  
4283  ;------------------------------------------------------------------------------
4284  Weapon ToxinTractorExplosionEffectUpgraded
4285    PrimaryDamage = 0.0            
4286    PrimaryDamageRadius = 1.0      
4287    AttackRange = 100.0
4288    DamageType = EXPLOSION 
4289    DeathType = EXPLODED
4290    WeaponSpeed = 99999.0
4291    ProjectileObject = NONE
4292    FireFX = FX_ToxinTruckExplosionOneFinalUpgraded
4293    FireOCL = OCL_PoisonFieldUpgradedSmall
4294    RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
4295    DelayBetweenShots = 0                   ; time between shots, msec
4296    ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
4297    ClipReloadTime = 0                      ; how long to reload a Clip, msec
4298    AutoReloadsClip = No 
4299    AntiGround = Yes
4300    DamageDealtAtSelfPosition = Yes
4301  End


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