;//////////////////////////////////////////////////////////////////////////////
;FILE: Weapon.ini (SYSTEM) ////////////////////////////////////////////////////
;//////////////////////////////////////////////////////////////////////////////

; Please keep all weapons belonging to the same unit grouped together, instead
; of grouping all Elite weapons together.

;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
; these are the new, "shell-based" projectile tank weapons.
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------

;------------------------------------------------------------------------------
Weapon MarauderTankGun
  PrimaryDamage = 90.0
  PrimaryDamageRadius = 7.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 200.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 300                           ; dist/sec 
  WeaponRecoil = 9                            
  ProjectileObject = MarauderTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = MarauderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 

End

;------------------------------------------------------------------------------
Weapon MarauderTankGunUpgradeOne
  PrimaryDamage = 120.0
  PrimaryDamageRadius = 9.0
  AttackRange = 212.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 12                            ; angle to deflect the model when firing
  ProjectileObject = MarauderTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = MarauderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1500        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon MarauderTankGunUpgradeTwo
  PrimaryDamage = 125.0
  PrimaryDamageRadius = 12.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 216.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 500                           ; dist/sec 
  WeaponRecoil = 14                            ; angle to deflect the model when firing
  ProjectileObject = MarauderTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = MarauderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 750           ; time between shots, msec
  ClipSize = 2                      ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 100              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon ScorpionTankGun
  PrimaryDamage = 70.0
  PrimaryDamageRadius = 9.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 200.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 6                            ; angle to deflect the model when firing
  ProjectileObject = ScorpionTankShell
  FireFX = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ;Commented out to show it has been moved to ScorpionTankGunFXWeapon, 
  ;because the art for the Toxin shell version incorporates the normal explosion.
;  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = ScorpionTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec


  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon ScorpionMissileWeapon
  PrimaryDamage = 100.0            
  PrimaryDamageRadius = 8.0      
  SecondaryDamage = 80.0          
  SecondaryDamageRadius = 25.0    
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 250.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = ScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_RocketBuggyMissileDetonation

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon ScorpionTankGunPlusOne
  PrimaryDamage = 90.0
  PrimaryDamageRadius = 12.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 205.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 6                            ; angle to deflect the model when firing
  ProjectileObject = ScorpionTankShell
  FireFX = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ;Commented out to show it has been moved to ScorpionTankGunFXWeapon, 
  ;because the art for the Toxin shell version incorporates the normal explosion.
;  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = ScorpionTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec


  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon ScorpionMissileWeaponPlusTwo
  PrimaryDamage = 125.0            
  PrimaryDamageRadius = 14.0      
  SecondaryDamage = 80.0          
  SecondaryDamageRadius = 25.0    
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 300.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = ScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 2            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_RocketBuggyMissileDetonation

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon ScorpionTankGunFXWeapon
  PrimaryDamage = 2.0
  PrimaryDamageRadius = 4.0
  AttackRange = 195.0
  FireFX = WeaponFX_NewTankShellDetonation2
End

;------------------------------------------------------------------------------
Weapon OverlordTankGun
  PrimaryDamage = 140 ;150.0
  PrimaryDamageRadius = 17.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage = 20.0
  SecondaryDamageRadius = 10.0
  AttackRange = 300.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 300                           ; dist/sec 
  WeaponRecoil = 8                            ; angle to deflect the model when firing
  ProjectileObject = OverlordTankShell
  FireFX            = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX   = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = FX_FireBaseHowitzerExplosion WeaponFX_GenericTankShellDetonation WeaponFX_NewTankShellDetonation2
  FireSound = OverlordTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 300              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon StrategyCenterGun
  PrimaryDamage         = 300.0            
  PrimaryDamageRadius   = 35.0      
  ScatterRadius         = 15.0
  ScatterRadiusVsInfantry = 15.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 755.0
  MinimumAttackRange = 100.0
  MinTargetPitch = 45                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 80                          ; ditto
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 150                           ; dist/sec 
  WeaponRecoil = 8                            ; angle to deflect the model when firing
  ProjectileObject = StrategyCenterArtilleryShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX = FX_StrategyCenterBarrage
  FireSound = StrategyCenter_ArtilleryRound
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 7000              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon BattleMasterTankGun
  PrimaryDamage           = 105.0
  PrimaryDamageRadius     = 8.0
  ScatterRadiusVsInfantry = 26.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 250.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 400                           ; dist/sec 
  WeaponRecoil            = 7                            ; angle to deflect the model when firing
  ProjectileObject        = BattleMasterTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ProjectileDetonationFX  = WeaponFX_GenericTankShellDetonation
  FireSound               = BattlemasterTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 2000               ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0              ; how long to reload a Clip, msec
  WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon CrusaderTankGun
  PrimaryDamage           = 110.0
  PrimaryDamageRadius     = 2.0
  ScatterRadiusVsInfantry = 38.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 255.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 400                           ; dist/sec 
  WeaponRecoil            = 10                            ; angle to deflect the model when firing
  ProjectileObject        = GenericTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX  = WeaponFX_GenericTankShellDetonation
  FireSound               = CrusaderTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 3000               ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0              ; how long to reload a Clip, msec
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon PaladinTankGun
  PrimaryDamage = 125.0
  PrimaryDamageRadius = 10.0
  ScatterRadiusVsInfantry = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 290.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 300                           ; dist/sec 
  WeaponRecoil = 5                            ; angle to deflect the model when firing
  ProjectileObject = GenericTankShell
  FireFX           = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX  = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = PaladinTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon PaladinPointDefenseLaser
  PrimaryDamage       = 100.0
  PrimaryDamageRadius = 0.0
  AttackRange         = 80.0 
  DamageType          = LASER
  DeathType           = LASERED
  WeaponSpeed         = 999999.0     ; dist/sec 
  DelayBetweenShots   = 1000         ; time between shots, msec
  ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0            ; how long to reload a Clip, msec
  AcceptableAimDelta  = 180          ; Don't need to turn at all.
  AntiSmallMissile    = Yes
  AntiProjectile      = No
  LaserName           = PointDefenseLaserBeam
  LaserBoneName       = LASER
  FireFX              = WeaponFX_PaladinPointDefenseLaser
End

;------------------------------------------------------------------------------
Weapon AvengerPointDefenseLaserOne
  PrimaryDamage       = 100.0
  PrimaryDamageRadius = 0.0
  AttackRange         = 120.0 
  DamageType          = LASER
  DeathType           = LASERED
  WeaponSpeed         = 999999.0     ; dist/sec 
  DelayBetweenShots   = 500         ; time between shots, msec
  ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0            ; how long to reload a Clip, msec
  AcceptableAimDelta  = 180          ; Don't need to turn at all.
  AntiSmallMissile    = Yes
  AntiProjectile      = Yes
  LaserName           = AvengerPointDefenseLaserBeam
  LaserBoneName       = LazerSpot01
  FireFX              = WeaponFX_PaladinPointDefenseLaser
  WeaponBonus         = PLAYER_UPGRADE DAMAGE 125% ; LaserBatteries
End

;------------------------------------------------------------------------------
Weapon AvengerPointDefenseLaserTwo
  PrimaryDamage       = 100.0
  PrimaryDamageRadius = 0.0
  AttackRange         = 120.0 
  DamageType          = LASER
  DeathType           = LASERED
  WeaponSpeed         = 999999.0     ; dist/sec 
  DelayBetweenShots   = 500         ; time between shots, msec
  ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0            ; how long to reload a Clip, msec
  AcceptableAimDelta  = 180          ; Don't need to turn at all.
  AntiSmallMissile    = Yes
  AntiProjectile      = Yes
  LaserName           = AvengerPointDefenseLaserBeam
  LaserBoneName       = LazerSpot02
  FireFX              = WeaponFX_PaladinPointDefenseLaser
  WeaponBonus         = PLAYER_UPGRADE DAMAGE 125% ; LaserBatteries
End

;------------------------------------------------------------------------------
Weapon AvengerAirLaserOne 
  PrimaryDamage         = 18.0
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 350.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ;WeaponSpeed           = 10.0          ; dist/sec (huge value == effectively instant)
  LaserName             = AvengerLaserBeam
  LaserBoneName         = TurretFX01
;  FireFX                = WeaponFX_PaladinPointDefenseLaser
;  VeterancyFireFX       = HEROIC WeaponFX_PaladinPointDefenseLaser
  FireSound             = AvengerAirLaserWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 200               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = No
  AntiGround = No
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; LaserBatteries
End

;------------------------------------------------------------------------------
Weapon AvengerAirLaserTwo
  PrimaryDamage         = 20.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 400.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ;WeaponSpeed           = 10.0          ; dist/sec (huge value == effectively instant)
  LaserName             = AvengerLaserBeam
  LaserBoneName         = TurretFX02
;  FireFX                = WeaponFX_PaladinPointDefenseLaser
;  VeterancyFireFX       = HEROIC WeaponFX_PaladinPointDefenseLaser
  FireSound             = AvengerAirLaserWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 200               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiGround = No
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; LaserBatteries
End

;------------------------------------------------------------------------------
Weapon AvengerTargetDesignator
  PrimaryDamage       = 250.0       ; How long (msec) we put the status on the target (should equal or exceed DelayBetweenShots)
  PrimaryDamageRadius = 3.0
  AttackRange         = 300.0 
  DamageType          = STATUS      ; We put an Object Status on the target
  DamageStatusType    = FAERIE_FIRE ; And here is what
  WeaponSpeed         = 999999.0     ; dist/sec 
  DelayBetweenShots   = 200         ; time between shots, msec
  ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0            ; how long to reload a Clip, msec
  LaserName           = AvengerTargetingLaserBeam
  LaserBoneName       = TurretFX03
  FireFX              = WeaponFX_AvengerTargetDesignator
  FireSound           = AvengerPaintWeaponLoop
  FireSoundLoopTime = 120                ; loop the firing sound until there's this much delay between shots 
End


;------------------------------------------------------------------------------
Weapon TechnicalCannonWeapon
  PrimaryDamage             = 75.0
  PrimaryDamageRadius       = 30.0
  ScatterRadiusVsInfantry   = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange               = 195.0
  MinTargetPitch            = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch            = 15                          ; ditto
  DamageType                = COMANCHE_VULCAN  
  DeathType                 = EXPLODED
  WeaponSpeed               = 300                          ; dist/sec 
  WeaponRecoil              = 8                            ; angle to deflect the model when firing
  ProjectileObject          = GenericTankShell
  FireFX                    = WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX    = WeaponFX_NewTankShellDetonation
  FireSound                 = ScorpionTankWeapon
  RadiusDamageAffects       = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots         = 1000                     ; time between shots, msec
  ClipSize                  = 1                                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime            = 900                          ; how long to reload a Clip, msec
  WeaponBonus               = PLAYER_UPGRADE DAMAGE 125%    ; APBullets
  ProjectileCollidesWith    = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
; end new "shell based" tank weapons
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------

;------------------------------------------------------------------------------
Weapon CrusaderMachineGun
  PrimaryDamage = 11.0
  PrimaryDamageRadius = 1.0
  AttackRange = 490.0
  DamageType = COMANCHE_VULCAN
  DeathType = NORMAL
  WeaponSpeed = 5000         ; dist/sec 
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX = WeaponFX_GenericTankGun
  FireSound = HumveeWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 140               ; time between shots, msec
  ClipSize = 600                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 700              ; how long to reload a Clip, msec
End

;-------------------------------------------------------------------------------
Weapon TunnelNetworkGun
  PrimaryDamage = 16.0
  PrimaryDamageRadius = 1.0
  AttackRange = 175.0
  DamageType = COMANCHE_VULCAN
  DeathType = NORMAL
  WeaponSpeed = 5000         ; dist/sec 
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX = WeaponFX_TechnicalGunFire
  FireSound =   HumveeWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 150         ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;-------------------------------------------------------------------------------
Weapon TunnelNetworkGunDUMMY
  PrimaryDamage = 0.01
  PrimaryDamageRadius = 0.0
  AttackRange = 175.0
  DamageType = SMALL_ARMS
  DeathType = NORMAL
  WeaponSpeed = 99999         ; dist/sec 
  ProjectileObject = NONE
  DelayBetweenShots = 1000         ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon SentryDroneGun
  PrimaryDamage = 14.0
  PrimaryDamageRadius = 2.0
  AttackRange = 180.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 5000         ; dist/sec 
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX = WeaponFX_SentryDroneGunFire
  VeterancyFireFX  = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound = SentryDroneWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 25         ; time between shots, msec
  ClipSize = 150                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1000              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon SentryDroneGunFake
  PrimaryDamage = 0.0
  PrimaryDamageRadius = 0.0
  AttackRange = 0.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 600         ; dist/sec 
  ProjectileObject = NONE
  ;FireFX = WeaponFX_SentryDroneGunFire
  ;VeterancyFireFX  = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  ;FireSound = SentryDroneWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 25         ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End


;------------------------------------------------------------------------------
Weapon HumveeGun 
  PrimaryDamage = 16.0  ; 14.0 
  PrimaryDamageRadius = 1.0
  AttackRange = 180.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 5000         ; dist/sec 
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX = WeaponFX_TechnicalGunFire
  VeterancyFireFX  = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound = HumveeWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 100         ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon HumveeMissileWeapon
  PrimaryDamage = 65.0            
  PrimaryDamageRadius = 7.0      
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 210.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 700               ; ignored for projectile weapons
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  ProjectileObject = HumveeMissile
  ProjectileExhaust = TowMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite) ; You have to have a clip size as a missile weapon
  ClipReloadTime = 2000     how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireSound = HumveeWeaponTOW
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon HumveeMissileWeaponAir
  PrimaryDamage = 70.0            
  PrimaryDamageRadius = 7.0      
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 370.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 700               ; ignored for projectile weapons
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  ProjectileObject            = PatriotMissile
  ProjectileExhaust = MissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite) ; You have to have a clip size as a missile weapon
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireSound = HumveeWeaponTOW
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  AntiGround = No

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon HellfireMissileWeapon
  PrimaryDamage = 70.0            
  PrimaryDamageRadius = 6.0      
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 180.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  ProjectileObject = MissileDefenderMissile
  ProjectileExhaust = MissileDefenderMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite) ; You have to have a clip size as a missile weapon
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireSound = MissileDefenderWeapon
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround = Yes
  AcceptableAimDelta    = 180.0 ; can fire facing any direction... drones are spazzes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon RangerAdvancedCombatRifle
  PrimaryDamage           = 9.0
  PrimaryDamageRadius     = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 140.0
  DamageType              = SMALL_ARMS
  DeathType               = NORMAL
  WeaponSpeed             = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject        = GenericMachineGunProjectile
  ;ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts
  FireFX                  = WeaponFX_GenericMachineGunFire
  VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound               = RangerWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 90              ; time between shots, msec
  ClipSize                = 30                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 1500              ; how long to reload a Clip, msec
  WeaponBonus             = DRONE_SPOTTING RATE_OF_FIRE 200%
  WeaponBonus             = DRONE_SPOTTING RANGE        200%
  WeaponBonus             = DRONE_SPOTTING DAMAGE       200%
  WeaponBonus             = PLAYER_UPGRADE DAMAGE 125%
End

;------------------------------------------------------------------------------
Weapon CINE_RangerAdvancedCombatRifle
  PrimaryDamage           = 5.0
  PrimaryDamageRadius     = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 999999.0
  DamageType              = SMALL_ARMS
  DeathType               = NORMAL
  WeaponSpeed             = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject        = GenericMachineGunProjectile
  ;ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts
  FireFX                  = WeaponFX_GenericMachineGunFire
  VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound               = RangerWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 100              ; time between shots, msec
  ClipSize                = 3                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 700              ; how long to reload a Clip, msec
  WeaponBonus             = DRONE_SPOTTING RATE_OF_FIRE 200%
  WeaponBonus             = DRONE_SPOTTING RANGE        200% 
  WeaponBonus             = DRONE_SPOTTING DAMAGE       200% 
End

;------------------------------------------------------------------------------
Weapon MissileDefenderMissileWeapon
  PrimaryDamage               = 60.0            
  PrimaryDamageRadius         = 6.0     
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 195.0
  DamageType                  = INFANTRY_MISSILE
  DeathType                   = NORMAL
  WeaponSpeed                 = 600               
  ProjectileObject            = MissileDefenderMissile
  ProjectileExhaust           = MissileDefenderMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileDefenderMissileExhaust
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  FireFX                      = FX_BuggyMissileIgnition
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0       ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 2200  ; time between shots, msec
  ClipSize                    = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = MissileDefenderWeapon
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125%
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  ProjectileCollidesWith      = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon MissileDefenderLaserGuidedMissileWeapon
  PrimaryDamage =70.0            
  PrimaryDamageRadius = 6.0       
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 325.0     ;Extending this range, allows the special ability to work better.
  DamageType = ARMOR_PIERCING     
  DeathType = NORMAL
  WeaponSpeed = 600               
  ProjectileObject = MissileDefenderMissile
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  ScatterRadius = 0       ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots = 500 ; time between shots, msec
  ClipSize = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireSound = MissileDefenderWeapon
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon GLAJarmenKellRifle
  PrimaryDamage = 210.0
  PrimaryDamageRadius = 1.0
  AttackRange = 700.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire
  FireSound = JarmenKellWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
;Jarmen Kell on a bike
;------------------------------------------------------------------------------
Weapon GLABikerKellSniperRifle
  PrimaryDamage = 240.0
  PrimaryDamageRadius = 2.0
  AttackRange = 750.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire
  FireSound = JarmenKellWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 750         ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
  AcceptableAimDelta    = 20.0
End


;------------------------------------------------------------------------------
Weapon CINE_GLAJarmenKellRifle
  PrimaryDamage = 300.0
  PrimaryDamageRadius = 1.0
  AttackRange = 999999.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire
  FireSound = JarmenKellWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon CINE_USAPathfinderSniperRifle
  PrimaryDamage = 210.0
  PrimaryDamageRadius = 1.0
  AttackRange = 999999.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire                   ; so the ground lighting effects do not give away position while stealthed
  FireSound = PathfinderWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon USAPathfinderSniperRifle
  PrimaryDamage = 210.0
  PrimaryDamageRadius = 1.0
  AttackRange = 600.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire                   ; so the ground lighting effects do not give away position while stealthed
  FireSound = PathfinderWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon GLAJarmenKellVehiclePilotSniperRifle
  PrimaryDamage = 1.0
  PrimaryDamageRadius = 2.0
  AttackRange = 600.0
  DamageType = KILL_PILOT
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound = JarmenKellWeaponSnipe
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0           ; time between shots, msec
  ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 30000          ; how long to reload a Clip, msec
  AutoReloadsClip = Yes
End

;------------------------------------------------------------------------------
Weapon ColonelBurtonSniperRifleWeapon
  PrimaryDamage         = 95.0
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 325.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject      = GenericMachineGunProjectile
  ;ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound             = ColonelBurtonWeapon ;SentryDroneWeapon 
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100        ; time between shots, msec
  ClipSize              = 15                     ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 700              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon ColonelBurtonKnifeWeapon
  LeechRangeWeapon = Yes
  PrimaryDamage         = 10000.0         ; always kills target in one hit
  PrimaryDamageRadius   = 0.0             ; 0 primary radius means "hits only intended victim"
  AttackRange           = 3.0
  DamageType            = MELEE
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0        ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = NONE;!
  FireSound             = HeroUSAKnifeAttack
  DelayBetweenShots     = 0            ; time between shots, msec
  ClipSize              = 1               ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1367               ; how long to reload a Clip, msec
  PreAttackDelay        = 833             ; 833 is natural time of the stabbing animation.
  PreAttackType         = PER_ATTACK ; Do the delay each time we attack a new target
End

;------------------------------------------------------------------------------
Weapon GLARebelMachineGun
  PrimaryDamage         = 9.0
  PrimaryDamageRadius   = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 170.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject      = GenericMachineGunProjectile
  ;ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers ; Heroic rebels get different FireFX
  FireSound             = RebelWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 50               ; time between shots, msec
  ClipSize              = 30                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1300              ; how long to reload a Clip, msec
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 150% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon GLARebelBikerMachineGun
  PrimaryDamage         = 12.0
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 195.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject      = GenericMachineGunProjectile
  ;ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_QuadCannonGunFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound             = CombatCycleRebelWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100 ;500               ; time between shots, msec
  ClipSize              = 60                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1000              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
  AcceptableAimDelta    = 20.0
End

;------------------------------------------------------------------------------
;*********************** Cinematic Only ***************************************
Weapon CINE_GLARebelMachineGun
  PrimaryDamage         = 5.0
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 250.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject      = GenericMachineGunProjectile
  ;ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers ; Heroic rebels get different FireFX
  FireSound             = RebelWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100               ; time between shots, msec
  ClipSize              = 3                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 700              ; how long to reload a Clip, msec
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon RedguardMachineGun
  PrimaryDamage         = 35.0
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 175.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound             = RedGuardWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 800               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon ChinaOfficerMachineGun
  PrimaryDamage = 14.0
  PrimaryDamageRadius = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange = 120.0
  DamageType = SMALL_ARMS
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound = RedGuardWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 500               ; time between shots, msec
  ClipSize = 9                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1000              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon AmericaOfficerMachineGun
  PrimaryDamage = 18.0
  PrimaryDamageRadius = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange = 130.0
  DamageType = SMALL_ARMS
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound = RedGuardWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 500               ; time between shots, msec
  ClipSize = 9                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1000              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon RedguardBayonet
  PrimaryDamage = 350.0         ; always kills target in one hit
  PrimaryDamageRadius = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange = 6.5
  DamageType = MELEE
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire
  FireSound = HeroUSAKnifeAttack
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  PreAttackDelay = 1400
  PreAttackType = PER_ATTACK ; Do the delay each time we attack a new target
End

;------------------------------------------------------------------------------
Weapon GattlingTankGun
  PrimaryDamage         = 14.0 
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 190.0
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                = WeaponFX_GattlingTankMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GattlingTankMachineGunFireWithRedTracers
  FireSound             = GattlingTankWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 250               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  ContinuousFireOne     = 2 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 6 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 1500 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  AntiGround = Yes
End

;------------------------------------------------------------------------------
Weapon GattlingTankGunAir
  PrimaryDamage         = 16.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 390.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 9000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GattlingTankMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GattlingTankMachineGunFireWithRedTracers
  FireSound             = GattlingTankWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 400               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  ContinuousFireOne     = 3 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 6 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiGround            = No
End

;------------------------------------------------------------------------------
Weapon GattlingBuildingGun
  PrimaryDamage         = 18.0 ;10.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 290.0
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                = WeaponFX_GattlingCannonMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
  FireSound             = GattlingCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 200               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  ContinuousFireOne     = 2 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 6 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  AntiSmallMissile      = No
  AntiBallisticMissile  = No
  AntiGround            = Yes
End

;------------------------------------------------------------------------------
Weapon SpectreGattlingGun
  PrimaryDamage         = 100.0 
  PrimaryDamageRadius   = 4.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 2222.0 ; huge range
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                = WeaponFX_SpectreGattlingMuzzleFlash
  VeterancyFireFX       = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
  FireSound             = SpectreGunshipGattlingWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  ContinuousFireOne     = 3 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 7 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
; WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  AntiSmallMissile      = No
  AntiBallisticMissile  = No
  AntiGround            = Yes
End
;------------------------------------------------------------------------------
Weapon SpectreHowitzerGun 
  PrimaryDamage          = 200.0 
  PrimaryDamageRadius    = 35.0       ; 0 primary radius means "hits only intended victim"
  AttackRange            = 2222.0    ; huge range
  DamageType             = EXPLOSION
  DeathType              = EXPLODED
  WeaponSpeed            = 999.0          ; dist/sec (huge value == effectively instant)
  AcceptableAimDelta     = 180.0 ;;;; can fire facing any direction... allows gunship to shoot sideways
  ProjectileObject       = SpectreHowitzerShell
  FireFX                 = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX        = HEROIC WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX = FX_SpectreHowitzerExplosion
  FireSound              = StrategyCenter_ArtilleryRound
  RadiusDamageAffects    = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots      = 777               ; time between shots, msec
  ClipSize               = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime         = 0              ; how long to reload a Clip, msec
  ContinuousFireOne      = 1 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo      = 2 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast    = 2000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus            = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 150% ; When the object achieves this state, this weapon gets double the rate of fire
  WeaponBonus            = CONTINUOUS_FIRE_FAST RATE_OF_FIRE 200% ; This is not cumulative, so with Delay of 40, and values of 2 and 4 for these  bonuses, you shoot at (40, 20, 10)
; WeaponBonus            = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle    = No
  AntiAirborneInfantry   = No
  AntiSmallMissile       = No
  AntiBallisticMissile   = No
  AntiGround             = Yes
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon GattlingBuildingGunAir 
  PrimaryDamage         = 22.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 445.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GattlingCannonMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
  FireSound             = GattlingCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 250               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  ContinuousFireOne     = 1 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 5 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiSmallMissile      = No
  AntiBallisticMissile  = Yes
  AntiGround            = No
End

;Given to the overlord tank so it's AI can target air manually from out of range. Must match
;GattlingBuildingGunAir's range
;------------------------------------------------------------------------------
Weapon GattlingBuildingGunAirDummy
  PrimaryDamage         = 0.0001
  PrimaryDamageRadius   = 0.0            ; 0 primary radius means "hits only intended victim"
  AttackRange           = 400.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0       ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 500            ; time between shots, msec
  ClipSize              = 0              ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiSmallMissile      = No
  AntiBallisticMissile  = Yes
  AntiGround            = No
End

;------------------------------------------------------------------------------
Weapon WatchTowerMachineGun
  PrimaryDamage = 17.0
  PrimaryDamageRadius = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange = 150.0
  DamageType = Gattling
  DeathType = NORMAL
  WeaponSpeed = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  FireSound             = ColonelBurtonWeapon
  DelayBetweenShots = 50               ; time between shots, msec
  ClipSize = 30                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 4000              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon CommandoMachineGun
  PrimaryDamage = 30.0
  PrimaryDamageRadius = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange = 95.0
  DamageType = SMALL_ARMS
  DeathType = NORMAL
  WeaponSpeed = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject      = GenericMachineGunProjectile
  ;ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 500               ; time between shots, msec
  ClipSize = 30                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1000              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon Comanche20mmCannonWeapon
  PrimaryDamage               = 15.0
  PrimaryDamageRadius         = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange                 = 265.0      
  MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
  DamageType                  = COMANCHE_VULCAN  ;used only for this weapon so stinger sites don't lose their guys but otherwise acts just like Small_Arms
  DeathType                   = NORMAL
  WeaponSpeed                 = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject            = GenericMachineGunProjectile
  ProjectileDetonationFX      = WeaponFX_NewGenericMachineGunImpacts2
  FireSound                   = ComancheWeaponMachineGun
  FireFX                      = WeaponFX_Comanche20mmCannonFire
  VeterancyFireFX             = HEROIC WeaponFX_HeroicComanche20mmCannonFire
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 50         ; time between shots, msec
  ClipSize                    = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
End

;------------------------------------------------------------------------------
Weapon ComancheAntiTankMissileWeapon
  PrimaryDamage               = 80.0            
  PrimaryDamageRadius         = 7.0      
  SecondaryDamage             = 30.0          
  SecondaryDamageRadius       = 25.0    
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 285.0
  MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
  DamageType                  = JET_MISSILES  ;not so good against base defenses and some other units.  
  DeathType                   = EXPLODED
  WeaponSpeed                 = 99999
  ProjectileObject            = ComancheAntiTankMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicComancheMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 500            ; time between shots, msec
  ClipSize                    = 6              ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip             = Yes
  ClipReloadTime              = 10000                      ; how long to reload a Clip, msec
  AutoReloadWhenIdle          = 10100    ; If I haven't fired in this long, I will reload on my own (rather than only after the last one is fired)
  FireSound                   = ComancheMissileWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_ComancheAntiTankMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneInfantry        = No
  AntiAirborneVehicle         = Yes
  ShowsAmmoPips               = Yes
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; Hellfire Missiles upgrade
End

;------------------------------------------------------------------------------
Weapon ComancheRocketPodWeapon
  PrimaryDamage           = 65.0            
  PrimaryDamageRadius     = 10.0      
  SecondaryDamage         = 10.0          
  SecondaryDamageRadius   = 40.0   
  ScatterRadius           = 0;changed to zero, unless you want to soften the results of the table below

  ; @todo srj -- need better targets; these are copied from Scud Storm
  ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
  ; These specific points are an even distribution simulating a 150 ScatterRadius.
  ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
  ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.

  ScatterTargetScalar     = 50; replaces the ScatterRadius, above, for scaling this table, below
  ScatterTarget           = X: 0.000 Y: 0.133
  ScatterTarget           = X: 0.133 Y:-0.200
  ScatterTarget           = X:-0.067 Y: 0.667
  ScatterTarget           = X: 0.300 Y: 0.300
  ScatterTarget           = X: 0.767 Y: 0.000       
  ScatterTarget           = X: 0.500 Y:-0.567        
  ScatterTarget           = X:-0.333 Y:-0.800        
  ScatterTarget           = X:-0.600 Y:-0.1333        
  ScatterTarget           = X:-0.567 Y: 0.433        
  ScatterTarget           = X: 0.000 Y: 0.133
  ScatterTarget           = X: 0.133 Y:-0.200
  ScatterTarget           = X:-0.067 Y: 0.667
  ScatterTarget           = X: 0.300 Y: 0.300
  ScatterTarget           = X: 0.767 Y: 0.000       
  ScatterTarget           = X: 0.500 Y:-0.567        
  ScatterTarget           = X:-0.333 Y:-0.800        
  ScatterTarget           = X:-0.600 Y:-0.1333        
  ScatterTarget           = X:-0.567 Y: 0.433        
  ScatterTarget           = X: 0.000 Y: 0.133
  ScatterTarget           = X: 0.133 Y:-0.200

  ScatterRadiusVsInfantry = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 225.0
  MinimumAttackRange      = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
  DamageType              = EXPLOSION
  DeathType               = EXPLODED
  WeaponSpeed             = 99999
  ProjectileObject        = ComancheRocketPodRocket
  ProjectileExhaust       = MissileExhaust
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 200    ; time between shots, msec
  ClipSize                = 24              ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip         = Yes
  ClipReloadTime          = 30000                      ; how long to reload a Clip, msec
  FireSound               = ComancheRocketPodWeaponSound
  FireFX                  = None
  ProjectileDetonationFX  = WeaponFX_ComancheRocketPodRocketDetonation
  ProjectileCollidesWith  = STRUCTURES
  AntiAirborneVehicle     = No
  AntiAirborneInfantry    = No
  WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; Hellfire Missiles upgrade
End

;------------------------------------------------------------------------------
Weapon ToxinShellWeapon ; No extra damage, just lays down a damage field
  PrimaryDamage = 0.0
  PrimaryDamageRadius = 1.0      
  AttackRange = 130.0
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  ProjectileObject = NONE
  FireFX = WeaponFX_ToxinShellWeapon
  FireOCL = OCL_PoisonFieldSmall
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
End

;------------------------------------------------------------------------------
Weapon ToxinShellWeaponUpgraded ; No extra damage, just lays down a damage field
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 1.0      
  AttackRange = 130.0
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  ProjectileObject = NONE
;  FireFX = WeaponFX_NapalmMissileDetonation
  FireOCL = OCL_PoisonFieldUpgradedSmall
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
End

;------------------------------------------------------------------------------
; When a barrel explodes
Weapon BarrelWeapon
  PrimaryDamage = 80.0
  PrimaryDamageRadius = 25.0
  SecondaryDamage = 30.0
  SecondaryDamageRadius = 30.0
  AttackRange = 200.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 600         ; dist/sec 
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
; When a TankerTruck explodes
Weapon TankerTruckWeapon
  PrimaryDamage = 280.0
  PrimaryDamageRadius = 50.0
  SecondaryDamage = 30.0
  SecondaryDamageRadius = 65.0
  AttackRange = 250.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 600         ; dist/sec 
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon A10ThunderboltVulcan
  PrimaryDamage         = 65.0
  PrimaryDamageRadius   = 8.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 550.0
  DamageType            = COMANCHE_VULCAN
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                = WeaponFX_Comanche20mmCannonFire
  FireSound             = GattlingCannonWeapon ;SpectreGunshipGattlingWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 50          ; time between shots, msec
  ClipSize              = 50                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon A10ThunderboltMissileWeapon
  PrimaryDamage         = 250.0      ;GS changed to what it was secretly doing pending review      
  PrimaryDamageRadius   = 70.0      
  AttackRange           = 450.0
  DamageType            = EXPLOSION
  DeathType             = EXPLODED
  WeaponSpeed           = 99999.0             
  ProjectileDetonationFX = FX_A10ThunderboltMissileExplosion
  RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES NOT_SIMILAR
  DelayBetweenShots     = 0      ; time between shots, msec
  ClipSize              = 1      ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 20000  ; how long to reload a Clip, msec
  AutoReloadsClip       = No 
End

;------------------------------------------------------------------------------
Weapon NeutronMissileWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 99999             ; not used for this weapon (it's "special")
  DamageType = RADIATION          ; not used for this weapon (it's "special")
  DeathType = NORMAL
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = NeutronMissile
  ProjectileExhaust = NeutronMissileExhaust
  FireFX = WeaponFX_NeutronMissile
  ProjectileDetonationFX = None   ; not used for this weapon (it's "special")
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0           ; not used for this weapon (it's "special")
  ClipSize = 1                    ; not used for this weapon (it's "special")
  ClipReloadTime = 0              ; not used for this weapon (it's "special")
  AutoReloadsClip = No            ; not used for this weapon (it's "special")
End

;------------------------------------------------------------------------------
Weapon ScudStormWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 999999            ; not used for this weapon (it's "special")
  DamageType = EXPLOSION          ; not used for this weapon (it's "special")
  DeathType = EXPLODED
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = ScudStormMissile
  ProjectileExhaust = ScudMissileExhaust
  FireFX = WeaponFX_ScudStormMissile
  FireSound = ScudStormLaunch
  ProjectileDetonationFX = ScudStormMissileDetonation
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = Min:100 Max:1000
  ClipSize = 9
  ClipReloadTime = 10000 ; give it time to sink into the ground          
  AutoReloadsClip = Yes
  ScatterRadius   = 0;changed to zero, unless you want to soften the results of the table below

  ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
  ; These specific points are an even distribution simulating a 150 ScatterRadius.
  ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
  ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.

  ScatterTargetScalar = 120; replaces the ScatterRadius, above, for scaling this table, below
  ScatterTarget = X: 0.000 Y: 0.133
  ScatterTarget = X: 0.133 Y:-0.200
  ScatterTarget = X:-0.067 Y: 0.667
  ScatterTarget = X: 0.300 Y: 0.300
  ScatterTarget = X: 0.767 Y: 0.000       
  ScatterTarget = X: 0.500 Y:-0.567        
  ScatterTarget = X:-0.333 Y:-0.800        
  ScatterTarget = X:-0.600 Y:-0.1333        
  ScatterTarget = X:-0.567 Y: 0.433        

  PreAttackDelay = 3000 ; Give the missiles time to get up, since we can't watch the animation. (If too short, missiles will pop up)
  PreAttackType = PER_CLIP ; Do the delay the first shot of each clip
  AcceptableAimDelta = 180 ; Don't need to turn at all.

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon ScudStormDamageWeapon
  PrimaryDamage = 800.0
  PrimaryDamageRadius = 90.0
  SecondaryDamage = 170.0 ;70.0
  SecondaryDamageRadius = 270.0 
  AttackRange = 250.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 600         ; dist/sec 
  FireFX = ScudStormMissileDetonation
  FireOCL = OCL_PoisonFieldLarge  ; So this weapon will do normal damage, and create this object
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon ScudStormDamageWeaponUpgraded
  PrimaryDamage = 850.0
  PrimaryDamageRadius = 95.0 ;25.0
  SecondaryDamage = 200.0 ;100.0
  SecondaryDamageRadius = 270.0 ;50.0
  AttackRange = 260.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 600         ; dist/sec 
  FireFX = ScudStormMissileDetonation
  FireOCL = OCL_PoisonFieldUpgradedLarge  ; So this weapon will do normal damage, and create this object
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon AuroraBombWeapon
  PrimaryDamage           = 455.0            
  PrimaryDamageRadius     = 35.0      
  AttackRange             = 320.0       ; this needs to be pretty high, since the Aurora moves so fast
  AcceptableAimDelta      = 45          ; we don't really need to be aimed directly at the target.
  DamageType              = AURORA_BOMB
  DeathType               = EXPLODED
  WeaponSpeed             = 99999
  ProjectileObject        = AuroraBomb
  FireFX                  = FX_AuroraBombLaunch
  ProjectileDetonationFX  = FX_AuroraBombDetonate
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  ClipSize                = 2                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 5000              ; how long to reload a Clip, msec
  AutoReloadsClip         = RETURN_TO_BASE                 ; must return to base to reload this weapon
  ShowsAmmoPips           = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith  = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon RaptorJetMissileWeapon
  PrimaryDamage               = 120.0            
  PrimaryDamageRadius         = 9.0
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 400 ;440.0
  MinimumAttackRange          = 100.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 150
  ClipSize                    = 6 
  ClipReloadTime              = 8000 
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon RaptorJetLaserGuidedMissileWeapon
  PrimaryDamage               = 135.0            
  PrimaryDamageRadius         = 12.0
  ScatterRadiusVsInfantry     = 8.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 450.0
  MinimumAttackRange          = 100.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 125
  ClipSize                    = 6 
  ClipReloadTime              = 8000
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon AircraftCarrierRaptorJetMissileWeapon
  PrimaryDamage               = 120.0            
  PrimaryDamageRadius         = 9.0
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 380 ;420.0
  MinimumAttackRange          = 140.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 150
  ClipSize                    = 4 
  ClipReloadTime              = 1000 
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon AircraftCarrierRaptorJetLaserGuidedMissileWeapon
  PrimaryDamage               = 135.0            
  PrimaryDamageRadius         = 12.0
  ScatterRadiusVsInfantry     = 8.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 440.0
  MinimumAttackRange          = 160.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 150
  ClipSize                    = 4 
  ClipReloadTime              = 1000
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End


;------------------------------------------------------------------------------
Weapon StealthJetMissileWeapon
  PrimaryDamage               = 140.0            
  PrimaryDamageRadius         = 8.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 330 ;350.0
  MinimumAttackRange          = 60.0 ; used to be 100.0, but that was too large for stealthjet/missile speed
  DamageType                  = STEALTHJET_MISSILES ;good against buildings, ok against everything else
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = StealthJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = StealthJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 200                      ; time between shots, msec
  ClipSize                    = 3                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000                     ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE           ; must return to base to reload this weapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle       = No
  AntiAirborneInfantry      = No
  ShowsAmmoPips             = Yes
End

;------------------------------------------------------------------------------
Weapon CINE_StealthJetMissileWeapon
  PrimaryDamage               = 100.0            
  PrimaryDamageRadius         = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 400
  MinimumAttackRange          = 60.0 ; used to be 100.0, but that was too large for stealthjet/missile speed
  DamageType                  = STEALTHJET_MISSILES ;good against buildings, ok against everything else
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = StealthJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = StealthJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                      ; time between shots, msec
  ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000                     ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE           ; must return to base to reload this weapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle       = No
  AntiAirborneInfantry      = No
  ShowsAmmoPips             = Yes
End

;------------------------------------------------------------------------------
Weapon StealthJetLaserGuidedMissileWeapon
  PrimaryDamage               = 155.0            
  PrimaryDamageRadius         = 15.0      
  ScatterRadiusVsInfantry     = 8.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 350 ;390.0
  MinimumAttackRange          = 60.0 ; used to be 100.0, but that was too large for stealthjet/missile speed
  DamageType                  = STEALTHJET_MISSILES ;good against buildings, ok against everything else
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = StealthJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = StealthJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 200                      ; time between shots, msec
  ClipSize                    = 3                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000                     ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE           ; must return to base to reload this weapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon DaisyCutterDetonationWeapon
  PrimaryDamage = 2500.0            
  PrimaryDamageRadius = 150.0      
  AttackRange = 150.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon DaisyCutterFlameWeapon
  PrimaryDamage = 9.0             ; Just a spot of flame to light trees on fire
  PrimaryDamageRadius = 150.0      
  AttackRange = 150.0
  DamageType = FLAME         
  DeathType = BURNED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End


;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;THE MOTHER OF ALL EXPLOSIONS
;------------------------------------------------------------------------------
Weapon MOABDetonationWeapon
  PrimaryDamage = 3500.0      ;2500.0      
  PrimaryDamageRadius = 190.0   ;220.0   
  AttackRange = 190.0

  ShockWaveAmount   = 320.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 250.0 ;130 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.33    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.

  FireFX                      = WeaponFX_MOAB_Blast 

  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon MOABFlameWeapon
  PrimaryDamage = 9.0             ; Just a spot of flame to light trees on fire
  PrimaryDamageRadius = 130.0      
  AttackRange = 130.0
  DamageType = FLAME         
  DeathType = BURNED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End


;------------------------------------------------------------------------------
Weapon CarpetBombWeapon
  PrimaryDamage = 400.0            
  PrimaryDamageRadius = 70.0      
  AttackRange = 140.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR   
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;--------------------------------------------------------------------------------
Weapon AnthraxBombWeapon
  PrimaryDamage       = 250.0            
  PrimaryDamageRadius = 280.0      
  AttackRange         = 230.0
  DamageType          = EXPLOSION         
  DeathType           = EXPLODED
  WeaponSpeed         = 99999.0
  FireOCL             = OCL_PoisonFieldAnthraxBomb  ; So this weapon will do normal damage, and create this object             
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots   = 0                   ; time between shots, msec
  ClipSize            = 1                   ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0                   ; how long to reload a Clip, msec
  AutoReloadsClip     = No 
End

;------------------------------------------------------------------------------
Weapon PatriotMissileWeapon
  PrimaryDamage               = 80.0            
  PrimaryDamageRadius         = 14.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 300.0
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1             ; locomotor specifies speed.
  ProjectileObject            = PatriotMissile
  ProjectileExhaust           = TowMissileExhaust;MissileExhaust
  FireSound                   = PatriotBatteryWeapon
  FireFX                      = FX_BuggyMissileIgnition
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                   ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
  AntiBallisticMissile        = No
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  RequestAssistRange          = 200    ; when I fire, my object will look around for things of
  ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
  ProjectileCollidesWith      = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon PatriotMissileWeaponAir
  PrimaryDamage               = 850.0            
  PrimaryDamageRadius         = 14.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 425.0
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600
  ProjectileObject            = PatriotMissile
  ProjectileExhaust           = TowMissileExhaust;MissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = PatriotBatteryWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                   ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = No
  AntiBallisticMissile        = Yes
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
  RequestAssistRange          = 200    ; when I fire, my object will look around for things of
  ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
  ProjectileCollidesWith      = STRUCTURES
End

;------------------------------------------------------------------------------
; For use with the Assisted Targeting Update.  No Assist Listing and longer range
Weapon PatriotMissileAssistWeapon
  PrimaryDamage               = 70.0            
  PrimaryDamageRadius         = 9.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 525.0 ; at least Regular's range + regular's request assist range
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = PatriotMissile
  ProjectileExhaust           = TowMissileExhaust ;MissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = PatriotBatteryWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                   ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon TunnelDefenderRocketWeapon
  PrimaryDamage               = 60.0            
  PrimaryDamageRadius         = 5.0      
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 195.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = TunnelDefenderMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiAirborneVehicle = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

;------------------------------------------------------------------------------
Weapon TunnelDefenderBikerRocketWeapon
  PrimaryDamage               = 75.0            
  PrimaryDamageRadius         = 5.0      
  ScatterRadiusVsInfantry     = 13.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 205.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = TunnelDefenderMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 500  ; time between shots, msec
  ClipSize                    = 2             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RocketBuggyWeapon ;RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  AntiAirborneVehicle = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  AcceptableAimDelta    = 20.0
End


;------------------------------------------------------------------------------
;Also known as the RocketBuggyWeapon for those of you doing a search for it. 
Weapon BuggyRocketWeapon
  PrimaryDamage               = 40.0            
  PrimaryDamageRadius         = 12.0      
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage             = 8.0          
  SecondaryDamageRadius       = 14.0    
  AttackRange                 = 320.0
  MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileObject            = RocketBuggyMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 200  ; time between shots, msec
  ClipSize                    = 8            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 6000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  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)
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = RocketBuggyWeapon 
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith      = STRUCTURES
  MissileCallsOnDie           = Yes
End
;------------------------------------------------------------------------------
;Also known as the RocketBuggyWeapon for those of you doing a search for it. 
Weapon CINE_BuggyRocketWeapon
  PrimaryDamage               = 20.0            
  PrimaryDamageRadius         = 0.0      
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage             = 5.0          
  SecondaryDamageRadius       = 10.0    
  AttackRange                 = 300.0   
  MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileObject            = RocketBuggyMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 200  ; time between shots, msec
  ClipSize                    = 6            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 6000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = RocketBuggyWeapon 
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith      = STRUCTURES
  MissileCallsOnDie           = Yes
End

;------------------------------------------------------------------------------
Weapon BuggyRocketWeaponUpgraded
  PrimaryDamage               = 50.0            
  PrimaryDamageRadius         = 15.0      
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage             = 10.0          
  SecondaryDamageRadius       = 14.0    
  AttackRange                 = 340.0
  MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = RocketBuggyMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 200  ; time between shots, msec
  ClipSize                    = 16            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 6000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  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)
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = RocketBuggyWeapon
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  MissileCallsOnDie           = Yes
End

;------------------------------------------------------------------------------
Weapon StingerMissileWeapon
  PrimaryDamage = 50.0            
  PrimaryDamageRadius = 8.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 290.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 750               ; ignored for projectile weapons
  ProjectileObject = StingerMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade


  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon CINE_StingerMissileWeapon
  PrimaryDamage = 20.0            
  PrimaryDamageRadius = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 2250.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 750               ; ignored for projectile weapons
  ProjectileObject = StingerMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade


  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon StingerMissileWeaponAir
  PrimaryDamage = 55.0            
  PrimaryDamageRadius = 15.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 450.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = StingerMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  AntiBallisticMissile = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon SuicideDynamitePack
  PrimaryDamage = 625.0           ;was 150.0
  PrimaryDamageRadius = 10.0      ;was 6.0
  SecondaryDamage = 200.0         ;was 30.0
  SecondaryDamageRadius = 30.0    ;was 25.0
  AttackRange = 5.0               ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonation 
  FireSound = CarBomberDie
End

;------------------------------------------------------------------------------
Weapon SuicideBikeBomb
  PrimaryDamage = 750.0            
  PrimaryDamageRadius = 38.0      
  SecondaryDamage = 230.0          
  SecondaryDamageRadius = 50.0    
  AttackRange = 10.0       ; must be very close to use this weapon!NOT!Not anymore since there was a glitch
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonation
  FireSound = CarBomberDie
End

;------------------------------------------------------------------------------
Weapon SuicideCarBomb
  PrimaryDamage = 820.0            
  PrimaryDamageRadius = 45.0      
  SecondaryDamage = 250.0          
  SecondaryDamageRadius = 60.0    
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonation
  FireSound = CarBomberDie
End

;------------------------------------------------------------------------------
;****************************Required For CHI01 INTRO**************************
Weapon CINEConvoyNuke
  PrimaryDamage = 1200.0            
  PrimaryDamageRadius = 1200.0          
  AttackRange = 5.0
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_CINEConvoyNuke
  FireSound = CarBomberDie
End

;------------------------------------------------------------------------------
Weapon HijackVehicle
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 0.0       
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = KILL_PILOT
  DeathType = NORMAL
  WeaponSpeed = 99999.0             
  FireFX = WeaponFX_GenericMachineGunFire
  FireSound = RebelWeapon
  ProjectileObject = NONE
  DelayBetweenShots = 0              
  ClipSize = 0                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon BlackLotusBuildingCaptureHack
  LeechRangeWeapon = Yes
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 0.01      
  AttackRange = 325
  DamageType = HACK
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 
  WeaponRecoil = 0                      ; angle to deflect the model when firing
  ProjectileObject = DragonTankFlameProjectile
  FireFX = WeaponFX_DragonTankFlameWeapon
  ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
  FireSound = DragonTankWeaponLoop
  FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
  DelayBetweenShots = 40                ; time between shots, msec
  ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air

End

;------------------------------------------------------------------------------
Weapon BlackLotusVehicleDisableHack
  LeechRangeWeapon = Yes
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 0.01      
  AttackRange = 180.0
  DamageType = HACK
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 
  WeaponRecoil = 0                      ; angle to deflect the model when firing
  ProjectileObject = DragonTankFlameProjectile
  FireFX = WeaponFX_DragonTankFlameWeapon
  ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
  FireSound = DragonTankWeaponLoop
  FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
  DelayBetweenShots = 40                ; time between shots, msec
  ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
End

;------------------------------------------------------------------------------
Weapon BlackLotusStealCashHack
  LeechRangeWeapon = Yes
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 0.01      
  AttackRange = 90.0
  DamageType = HACK
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 
  WeaponRecoil = 0                      ; angle to deflect the model when firing
  ProjectileObject = DragonTankFlameProjectile
  FireFX = WeaponFX_DragonTankFlameWeapon
  ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
  FireSound = DragonTankWeaponLoop
  FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
  DelayBetweenShots = 40                ; time between shots, msec
  ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
End

;------------------------------------------------------------------------------
Weapon HackerDisableBuildingHack
  LeechRangeWeapon = Yes
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 0.01      
  AttackRange = 90.0
  DamageType = HACK
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 
  WeaponRecoil = 0                      ; angle to deflect the model when firing
  ProjectileObject = DragonTankFlameProjectile
  FireFX = WeaponFX_DragonTankFlameWeapon
  ProjectileDetonationFX = WeaponFX_DragonTankMissileDetonation
  FireSound = DragonTankWeaponLoop
  FireSoundLoopTime = 80                ; loop the firing sound until there's this much delay between shots 
  DelayBetweenShots = 40                ; time between shots, msec
  ClipSize = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
End

;------------------------------------------------------------------------------
;This weapon fires standard anti-tank missiles at range
;------------------------------------------------------------------------------
Weapon ChinaInfantryTankHunterMissileLauncher
  PrimaryDamage = 60.0            
  PrimaryDamageRadius = 9.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 195.0
  MinimumAttackRange = 5.0  ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType = INFANTRY_MISSILE   ;ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = TankHunterMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  ScatterRadius = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots = 1000  ; time between shots, msec
  ClipSize = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireSound = TankHunterWeapon
  FireFX = FX_BuggyMissileIgnition
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation

  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon TNTDetonationWeapon ;Created by tankhunters
  PrimaryDamage = 700.0            
  PrimaryDamageRadius = 20.0      
  SecondaryDamage = 250.0          
  SecondaryDamageRadius = 50.0    
  AttackRange = 7.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  FireSound = BombTruckDefaultBombDetonation
End

;------------------------------------------------------------------------------
Weapon BoobyTrapDetonationWeapon ;Created by Rebels as an upgrade
  PrimaryDamage = 400.0            
  PrimaryDamageRadius = 12.0      ; These ranges are the range past the boobytrapped objects' bounding circle
  SecondaryDamage = 150.0          
  SecondaryDamageRadius = 25.0    ; These ranges are the range past the boobytrapped objects' bounding circle
  DamageType = EXPLOSION         
  DeathType = EXPLODED
End

;------------------------------------------------------------------------------
Weapon BurtonC4ChargeWeapon
  LeechRangeWeapon = Yes
  PrimaryDamage = 2500.0            
  PrimaryDamageRadius = 45.0      
  SecondaryDamage = 250.0          
  SecondaryDamageRadius = 85.0    
  AttackRange = 5.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  FireSound = RemoteDemoChargeExplosion
End

;------------------------------------------------------------------------------
Weapon PTBoatGun
  PrimaryDamage           = 75.0
  PrimaryDamageRadius     = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 550.0
  DamageType              = COMANCHE_VULCAN
  DeathType               = NORMAL
  WeaponSpeed             = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject        = GenericMachineGunProjectile
  ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                  = WeaponFX_QuadCannonGunFire
  FireSound               = QuadCannonWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 100               ; time between shots, msec
  ClipSize                = 200                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 900              ; how long to reload a Clip, msec
  AutoReloadsClip         = Yes
  AntiAirborneVehicle     = Yes
  AntiAirborneInfantry    = Yes
  AntiGround              = Yes
End

;------------------------------------------------------------------------------
Weapon TechnicalMachineGunWeapon 
  PrimaryDamage           = 14.0 ; 12.0
  PrimaryDamageRadius     = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 170.0
  DamageType              = COMANCHE_VULCAN  
  DeathType               = NORMAL
  WeaponSpeed             = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject        = GenericMachineGunProjectile
  ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts
  FireFX                  = WeaponFX_TechnicalGunFire
  VeterancyFireFX         = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound               = TechnicalWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 100               ; time between shots, msec
  ClipSize                = 100                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 1000              ; how long to reload a Clip, msec
  WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End

;------------------------------------------------------------------------------
Weapon TechnicalRPGWeapon
  PrimaryDamage               = 70.0            
  PrimaryDamageRadius         = 8.0      
  ScatterRadiusVsInfantry     = 0.0              ; When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 190.0
  MinimumAttackRange          = 5.0               ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION         ; ignored for projectile weapons
  DeathType                   = EXPLODED
  ProjectileObject            = TechnicalRPGMissile
  ProjectileExhaust           = InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicInfantryStingerMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0                 ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000              ; time between shots, msec
  ClipSize                    = 1                 ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1000                 ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = TunnelRocketWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon QuadCannonGun
  PrimaryDamage         = 12.0
  PrimaryDamageRadius   = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 175.0
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_QuadCannonGunFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound             = QuadCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100 ;500               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End

;------------------------------------------------------------------------------
Weapon QuadCannonGunAir
  PrimaryDamage         = 14.0
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 370.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 9000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_QuadCannonGunFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound             = QuadCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100 ;500               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiGround = No
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End

;------------------------------------------------------------------------------
Weapon QuadCannonGunUpgradeOne
  PrimaryDamage         = 14.0
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 210.0
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_QuadCannonGunFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound             = QuadCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 50 ;250               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End

;------------------------------------------------------------------------------
Weapon QuadCannonGunUpgradeOneAir
  PrimaryDamage         = 16.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 390.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 9000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_QuadCannonGunFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound             = QuadCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 50 ;250               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiGround = No
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End

;------------------------------------------------------------------------------
Weapon QuadCannonGunUpgradeTwo
  PrimaryDamage         = 16.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 240.0
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                = WeaponFX_QuadCannonGunFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound             = QuadCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 25 ;125               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End

;------------------------------------------------------------------------------
Weapon QuadCannonGunUpgradeTwoAir
  PrimaryDamage         = 18.0
  PrimaryDamageRadius   = 4.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 400.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 9000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_QuadCannonGunFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicQuadCannonGunFire
  FireSound             = QuadCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 25 ;125               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiGround = No
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End

;------------------------------------------------------------------------------
Weapon SuicideBomb
  PrimaryDamage = 350.0            
  PrimaryDamageRadius = 15.0      
  SecondaryDamage = 80.0          
  SecondaryDamageRadius = 60.0    
  LeechRangeWeapon = Yes  ; so if it gets in range of a unit moving away from it, it still detonates. jba.
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonation
  FireSound = Explosion
End

;------------------------------------------------------------------------------
Weapon NuclearTankDeathWeapon
  PrimaryDamage               = 35.0            
  PrimaryDamageRadius         = 45.0      
  SecondaryDamage             = 20.0          
  SecondaryDamageRadius       = 85.0    
  AttackRange                 = 120.0
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  WeaponSpeed                 = 99999.0
  ProjectileObject            = NONE
  FireFX                      = WeaponFX_NapalmMissileDetonation
  FireOCL                     = OCL_RadiationFieldSmall
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 0                   ; time between shots, msec
  ClipSize                    = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip             = No 
  AntiGround                  = Yes
  DamageDealtAtSelfPosition   = Yes
End

;------------------------------------------------------------------------------
Weapon ChinaPowerPlantDeathWeapon
  PrimaryDamage               = 490.0            
  PrimaryDamageRadius         = 100.0      
  SecondaryDamage             = 90.0          
  SecondaryDamageRadius       = 120.0    
  AttackRange                 = 135.0
  DamageType                  = EXPLOSION         
  DeathType                   = EXPLODED
  WeaponSpeed                 = 99999.0    
  FireFX                      = FX_ChinaPowerPlantDeath
  FireOCL                     = OCL_RadiationFieldMedium
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 0                   ; time between shots, msec
  ClipSize                    = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0               ; how long to reload a Clip, msec
  AutoReloadsClip             = No 
  ShockWaveAmount             = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius             = 75.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff           = 0.50    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End

;------------------------------------------------------------------------------
Weapon TomahawkMissileWeapon
  PrimaryDamage               = 350.0            
  PrimaryDamageRadius         = 35.0      
  SecondaryDamage             = 60.0          
  SecondaryDamageRadius       = 35.0    
  ScatterRadiusVsInfantry     = 15.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 750.0
  PreAttackDelay              = 250
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  MinimumAttackRange          = 100.0
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_TomahawkIgnition
  ProjectileObject            = TomahawkMissile
  ProjectileExhaust           = TomahawkMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicTomahawkMissileExhaust
;  ProjectileDetonationFX      = WeaponFX_TomahawkMissileDetonation
  ProjectileDetonationFX      = WeaponFX_BombTruckDefaultBombDetonation
  RadiusDamageAffects         = SELF ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound                   = TomahawkWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                   ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 7000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition
  CapableOfFollowingWaypoints = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon AmbulanceCleanHazardWeapon
  PrimaryDamage               = 100.0            
  PrimaryDamageRadius         = 50.0      
  AttackRange                 = 100.0
  
  ;This breaks (deadlocks) the AI when ambulance is on top of a "toxic point" to attack.
  ;MinimumAttackRange          = 10.0

  DamageType                  = HAZARD_CLEANUP
  DeathType                   = NORMAL
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = CleanupStreamProjectile
  FireFX                      = WeaponFX_CleanupFireWeapon
  ProjectileDetonationFX      = WeaponFX_CleanupToxinDetonation
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = CleanupHazardProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = ENEMIES STRUCTURES WALLS SHRUBBERY
End

;------------------------------------------------------------------------------
Weapon BioHazardTechCleanHazardWeapon 
  PrimaryDamage               = 4.0            
  PrimaryDamageRadius         = 25.0      
  AttackRange                 = 125.0
  MinimumAttackRange          = 10.0
  DamageType                  = HAZARD_CLEANUP
  DeathType                   = NORMAL
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = BioHazardCleanupStreamProjectile
  FireFX                      = WeaponFX_CleanupFireWeapon
  ProjectileDetonationFX      = WeaponFX_CleanupToxinDetonation
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = CleanupHazardProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = ENEMIES STRUCTURES WALLS SHRUBBERY
End

;------------------------------------------------------------------------------
Weapon DragonTankFlameWeapon
  PrimaryDamage               = 10.0            
  PrimaryDamageRadius         = 7.0      
  SecondaryDamage             = 1.0          
  SecondaryDamageRadius       = 10.0    
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 135.0
  MinimumAttackRange          = 0; 10.0
  DamageType                  = FLAME
  DeathType                   = BURNED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = DragonTankFlameProjectile
  FireFX                      = WeaponFX_DragonTankFlameWeapon
  ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonation
  FireSound                   = DragonTankWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon DragonTankFireWallWeapon
  PrimaryDamage               = 20.0            
  PrimaryDamageRadius         = 10.0      
  SecondaryDamage             = 3.0          
  SecondaryDamageRadius       = 10.0    
  AttackRange                 = 55.0 ; About the range from unit to start of fire.
  DamageType                  = FLAME
  DeathType                   = BURNED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = DragonTankFlameProjectile
  FireFX                      = WeaponFX_DragonTankFlameWeapon
  ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonation
  ProjectileDetonationOCL     = OCL_FireWallSegment
  FireSound                   = DragonTankWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ProjectileStreamName        = FlamethrowerProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
End

;------------------------------------------------------------------------------
Weapon DragonTankFlameWeaponUpgraded
  PrimaryDamage               = 12.5            
  PrimaryDamageRadius         = 9.0      
  SecondaryDamage             = 3.25          
  SecondaryDamageRadius       = 13.0    
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 145.0
  MinimumAttackRange          = 10.0
  DamageType                  = FLAME
  DeathType                   = BURNED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = DragonTankFlameProjectileUpgraded
  FireFX                      = WeaponFX_DragonTankFlameWeaponUpgraded
  ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonationUpgraded
  FireSound                   = DragonTankWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ProjectileStreamName        = FlamethrowerProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon DragonTankFireWallWeaponUpgraded
  PrimaryDamage               = 18.5            
  PrimaryDamageRadius         = 10.0      
  SecondaryDamage             = 6.25          
  SecondaryDamageRadius       = 15.0    
  AttackRange                 = 85.0 ; About the range from unit to start of fire.
  DamageType                  = FLAME
  DeathType                   = BURNED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = DragonTankFlameProjectileUpgraded
  FireFX                      = WeaponFX_DragonTankFlameWeaponUpgraded
  ProjectileDetonationFX      = WeaponFX_DragonTankMissileDetonationUpgraded
  ProjectileDetonationOCL     = OCL_FireWallSegmentUpgraded
  FireSound                   = DragonTankWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ProjectileStreamName        = FlamethrowerProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
End

;------------------------------------------------------------------------------
Weapon ToxinTruckGun
  PrimaryDamage               = 10.0            
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 150.0
  MinimumAttackRange          = 0 ;20.0
  DamageType                  = POISON
  DeathType                   = POISONED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectile
  FireFX                      = WeaponFX_ToxinTruckFlameWeapon
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonation
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon ToxinTruckGunUpgraded
  PrimaryDamage               = 12.5
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 150.0
  MinimumAttackRange          = 10.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectileUpgraded
  FireFX                      = WeaponFX_ToxinTruckFlameWeaponUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonationUpgraded
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon ToxinTruckSprayer
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 3.0      
  SecondaryDamage             = 2.0          
  SecondaryDamageRadius       = 75.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = WeaponFX_ToxinTruckSprayNozzle
  ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGround
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon ToxinTruckSprayerUpgraded
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 5.0      
  SecondaryDamage             = 2.5          
  SecondaryDamageRadius       = 75.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = WeaponFX_ToxinTruckSprayNozzleUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGroundUpgraded
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon ToxinTruckGunPlusOne
  PrimaryDamage               = 14.5            
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 150.0
  MinimumAttackRange          = 0 ;20.0
  DamageType                  = POISON
  DeathType                   = POISONED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectile
  FireFX                      = WeaponFX_ToxinTruckFlameWeapon
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonation
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon ToxinTruckGunUpgradedPlusOne
  PrimaryDamage               = 16.0
  PrimaryDamageRadius         = 14.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 150.0
  MinimumAttackRange          = 10.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectileUpgraded
  FireFX                      = WeaponFX_ToxinTruckFlameWeaponUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonationUpgraded
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon ToxinTruckSprayerPlusOne
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 5.0      
  SecondaryDamage             = 3.5          
  SecondaryDamageRadius       = 75.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = WeaponFX_ToxinTruckSprayNozzle
  ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGround
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon ToxinTruckSprayerUpgradedPlusOne
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 5.5      
  SecondaryDamage             = 3.5          
  SecondaryDamageRadius       = 85.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = WeaponFX_ToxinTruckSprayNozzleUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGroundUpgraded
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon ToxinTruckGunPlusTwo
  PrimaryDamage               = 15.0            
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 160.0
  MinimumAttackRange          = 0 ;20.0
  DamageType                  = POISON
  DeathType                   = POISONED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectile
  FireFX                      = WeaponFX_ToxinTruckFlameWeapon
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonation
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon ToxinTruckGunUpgradedPlusTwo
  PrimaryDamage               = 20.0
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 160.0
  MinimumAttackRange          = 10.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectileUpgraded
  FireFX                      = WeaponFX_ToxinTruckFlameWeaponUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonationUpgraded
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon ToxinTruckSprayerPlusTwo
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 7.0      
  SecondaryDamage             = 6.0          
  SecondaryDamageRadius       = 85.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = WeaponFX_ToxinTruckSprayNozzle
  ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGround
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon ToxinTruckSprayerUpgradedPlusTwo
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 0.0      
  SecondaryDamage             = 4.0          
  SecondaryDamageRadius       = 75.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = WeaponFX_ToxinTruckSprayNozzleUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckSprayGroundUpgraded
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon FireWallSegmentWeapon
  PrimaryDamage               = 8.0            
  PrimaryDamageRadius         = 12.0      
  AttackRange                 = 15.0
  DamageType                  = FLAME
  DeathType                   = BURNED
  WeaponSpeed                 = 600                     ;  dist/sec 

; FireFx left commented out to illustrate particle presence is on object
  ;FireFX = WeaponFX_SmallFireFieldWeapon

  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon FireWallSegmentUpgradedWeapon
  PrimaryDamage               = 10.0            
  PrimaryDamageRadius         = 15.0      
  AttackRange                 = 15.0
  DamageType                  = FLAME
  DeathType                   = BURNED
  WeaponSpeed                 = 600                     ;  dist/sec 

; FireFx left commented out to illustrate particle presence is on object
  ;FireFX = WeaponFX_SmallFireFieldWeapon

  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon ParticleUplinkCannonBeamTrailRemnantWeapon
  PrimaryDamage               = 25.0 ;38.0            
  PrimaryDamageRadius         = 17.0      
  DamageType                  = PARTICLE_BEAM
  DeathType                   = BURNED
  WeaponSpeed                 = 250                     ;  dist/sec 

; FireFx left commented out to illustrate particle presence is on object
  ;FireFX = WeaponFX_SmallFireFieldWeapon

  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon DirtyNukeCreationWeapon ; Nukes are complicated, so we need to spawn an object, not just do damage
  FireOCL = OCL_DirtyNuke
End

;------------------------------------------------------------------------------
Weapon SmallFireFieldWeapon
  PrimaryDamage               = 10.0  ;will do this 10 times in 2.5 seconds - DB            
  PrimaryDamageRadius         = 30.0      
  AttackRange                 = 15.0
  MinimumAttackRange          = 10.0
  DamageType                  = FLAME
  DeathType                   = BURNED
  WeaponSpeed                 = 600                     ;  dist/sec 

;Commented out to show effect was moved to object itself.  Note that if the damage radius
;changed then the art must be changed now too becuase of this.
  ;FireFX = WeaponFX_SmallFireFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon SmallFireFieldWeaponUpgraded
  PrimaryDamage = 12.5            
  PrimaryDamageRadius = 30.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = FLAME
  DeathType = BURNED
  WeaponSpeed = 600                     ;  dist/sec 

;Commented out to show effect was moved to object itself.  Note that if the damage radius
;changed then the art must be changed now too becuase of this.
  ;FireFX = WeaponFX_SmallFireFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 250                ; time between shots, msec
End

;------------------------------------------------------------------------------
;This weapon is used at the core of every damage field to kill other fields to prevent stacking
Weapon HazardFieldCoreWeapon
  PrimaryDamage = 200.0            
  PrimaryDamageRadius = 10.0      
  AttackRange = 15.0
  DamageType = HAZARD_CLEANUP

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS

  ; This clip pattern insures that the new field kills the old fields
  DelayBetweenShots = 5
  ClipSize = 1         
  ClipReloadTime = 100000
End

;------------------------------------------------------------------------------
Weapon LargePoisonFieldWeapon
  PrimaryDamage = 15.0            
  PrimaryDamageRadius = 140.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_LargePoisonFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon MediumPoisonFieldWeapon
  PrimaryDamage = 2.0            
  PrimaryDamageRadius = 80.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_MediumPoisonFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon SmallPoisonFieldWeapon
  PrimaryDamage = 2.0            
  PrimaryDamageRadius = 12.0 ;7.5      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_SmallPoisonFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon AnthraxBombPoisonFieldWeapon
  PrimaryDamage = 40.0
  PrimaryDamageRadius = 300.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED_BETA
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_LargePoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon LargePoisonFieldWeaponUpgraded
  PrimaryDamage = 25.0            
  PrimaryDamageRadius = 140.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED_BETA
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_LargePoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon MediumPoisonFieldWeaponUpgraded
  PrimaryDamage = 2.5            
  PrimaryDamageRadius = 80.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED_BETA
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_MediumPoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon SmallPoisonFieldWeaponUpgraded
  PrimaryDamage = 2.5            
  PrimaryDamageRadius = 7.5     
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED_BETA
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_SmallPoisonFieldWeaponUpgraded ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon LargeRadiationFieldWeapon
  PrimaryDamage = 25.0            
  PrimaryDamageRadius = 200.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = RADIATION
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_LargeRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 750                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon MediumRadiationFieldWeapon
  PrimaryDamage = 15.0            
  PrimaryDamageRadius = 50.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = RADIATION
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_MediumRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 750                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon SmallRadiationFieldWeapon 
  PrimaryDamage = 5.0            
  PrimaryDamageRadius = 25.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = RADIATION
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_SmallRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 750                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon NukeRadiationFieldWeapon
  PrimaryDamage = 25.0            
  PrimaryDamageRadius = 200.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = RADIATION
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_LargeRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  SuspendFXDelay = 10000;milliseconds 

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 750                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon TreeFireDealDamageWeapon
  PrimaryDamage = 5.0            
  PrimaryDamageRadius = 2.0      
  AttackRange = 100.0
  DamageType = FLAME         
  DeathType = BURNED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon BurningEmberWeapon
  PrimaryDamage = 2.0            
  PrimaryDamageRadius = 2.0      
  AttackRange = 100.0
  DamageType = FLAME         
  DeathType = BURNED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
; firing this weapon just creates a Firestorm object.
Weapon FirestormSmallCreationWeapon
  DamageType = FLAME
  DeathType = BURNED
  FireOCL = OCL_FirestormSmall
End

;------------------------------------------------------------------------------
; firing this weapon just creates a Firestorm object.
Weapon BlackNapalmFirestormSmallCreationWeapon
  DamageType = FLAME
  DeathType = BURNED
  FireOCL = OCL_BlackNapalmFirestormSmall
End

;------------------------------------------------------------------------------
Weapon TroopCrawlerAssault
  PrimaryDamage = 0.00001
  PrimaryDamageRadius = 0.0
  AttackRange = 175.0 ;Needs to see farther and match it's unit's sight range -- else troop crawlers will get slaughtered against tanks!
  DamageType = DEPLOY
  DeathType = NORMAL
  WeaponSpeed = 0         ; dist/sec 
  ProjectileObject = NONE
  FireFX = None
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon AircraftCarrierOrderLaunch
  PrimaryDamage = 0.00001
  PrimaryDamageRadius = 0.0
  AttackRange = 1000000.0 
  DamageType = DEPLOY
  DeathType = NORMAL
  WeaponSpeed = 0         ; dist/sec 
  ProjectileObject = NONE
  FireFX = None
  DelayBetweenShots = 1000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon InfernoCannonGun
  PrimaryDamage = 120.0
  PrimaryDamageRadius = 35.0
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 600
  MinimumAttackRange = 50.0
  MinTargetPitch = -90
  MaxTargetPitch = 79
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 250         ; dist/sec 
  MinWeaponSpeed = 75        
  ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range
  ProjectileObject = InfernoTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  FireSound = InfernoCannonWeapon
  ProjectileDetonationFX = WeaponFX_InfernoTankShellDetonation
  RadiusDamageAffects = ENEMIES NEUTRALS ALLIES NOT_SIMILAR
  DelayBetweenShots = 4000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec

  HistoricBonusTime = 3000
  HistoricBonusCount = 6
  HistoricBonusRadius = 20
  HistoricBonusWeapon = FirestormSmallCreationWeapon
End

;------------------------------------------------------------------------------
Weapon InfernoCannonGunUpgraded
  PrimaryDamage = 127.5
  PrimaryDamageRadius = 55.5
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 630
  MinimumAttackRange = 50.0
  MinTargetPitch = -90
  MaxTargetPitch = 79
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 250         ; dist/sec 
  MinWeaponSpeed = 75        
  ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range
  ProjectileObject = InfernoTankShellUpgraded
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  FireSound = InfernoCannonWeapon
  ProjectileDetonationFX = WeaponFX_InfernoTankShellDetonation
  RadiusDamageAffects = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots = 4000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec

  HistoricBonusTime = 3000
  HistoricBonusCount = 6
  HistoricBonusRadius = 20
  HistoricBonusWeapon = BlackNapalmFirestormSmallCreationWeapon
End

;------------------------------------------------------------------------------
Weapon SmallFireFieldCreationWeapon
  FireOCL = OCL_FireFieldSmall
  PrimaryDamage = 0.0
  PrimaryDamageRadius = 1.0
End

;------------------------------------------------------------------------------
Weapon SmallFireFieldUpgradedCreationWeapon
  FireOCL = OCL_FireFieldUpgradedSmall
  PrimaryDamage = 0.0
  PrimaryDamageRadius = 1.0
End

;------------------------------------------------------------------------------
Weapon NukeCannonGun
  PrimaryDamage           = 580.0
  PrimaryDamageRadius     = 50.0
  SecondaryDamage         = 40.0
  SecondaryDamageRadius   = 60.0
  ScatterRadiusVsInfantry = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 750.0
  MinimumAttackRange      = 200.0
  DamageType              = EXPLOSION
  DeathType               = EXPLODED
  WeaponSpeed             = 200         ; dist/sec 
  ProjectileObject        = NukeCannonShell
  FireFX                  = WeaponFX_NukeCannonMuzzleFlash
  FireSound               = NukeCannonWeapon
  VeterancyFireFX         = HEROIC WeaponFX_HeroicNukeCannonMuzzleFlash
  ProjectileDetonationFX  = WeaponFX_NukeCannon
  ProjectileDetonationOCL = OCL_RadiationFieldMedium
  RadiusDamageAffects     = SUICIDE SELF ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots       = 10000        ; time between shots, msec
  ClipSize                = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0            ; how long to reload a Clip, msec
  ShockWaveAmount         = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius         = 75.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff       = 0.50    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End

;------------------------------------------------------------------------------
;*********************** Cinematic Only Unit **********************************
Weapon CINE_NukeCannonGun
  PrimaryDamage           = 1
  PrimaryDamageRadius     = 1
  SecondaryDamage         = 1
  SecondaryDamageRadius   = 1
  ScatterRadiusVsInfantry = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 2000.0
  MinimumAttackRange      = 200.0
  DamageType              = EXPLOSION
  DeathType               = EXPLODED
  WeaponSpeed             = 2000         ; dist/sec 
  FireFX                  = WeaponFX_NukeCannonMuzzleFlash
  FireSound               = NukeCannonWeapon
  VeterancyFireFX         = HEROIC WeaponFX_HeroicNukeCannonMuzzleFlash
  RadiusDamageAffects     = SUICIDE SELF ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots       = 10000        ; time between shots, msec
  ClipSize                = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0            ; how long to reload a Clip, msec
End
;------------------------------------------------------------------------------
Weapon SCUDLauncherGunExplosive
  PrimaryDamage               = 480.0            
  PrimaryDamageRadius         = 90.0      
  SecondaryDamage             = 100.0          
  SecondaryDamageRadius       = 120.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 640.0
  MinimumAttackRange          = 160.0
  PreAttackDelay              = 500
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_ScudLauncherIgnition
  ProjectileObject            = SCUDMissile
  ProjectileExhaust           = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX      = WeaponFX_SCUDMissileDetonationExplosive
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound                   = ScudLauncherWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000            ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunExplosivePlusOne
  PrimaryDamage               = 510.0            
  PrimaryDamageRadius         = 100.0      
  SecondaryDamage             = 120.0          
  SecondaryDamageRadius       = 100.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 650.0
  MinimumAttackRange          = 160.0
  PreAttackDelay              = 500
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_ScudLauncherIgnition
  ProjectileObject            = SCUDMissilePlusOne
  ProjectileExhaust           = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX      = WeaponFX_SCUDMissileDetonationExplosive
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound                   = ScudLauncherWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000            ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunExplosivePlusTwo
  PrimaryDamage               = 530.0            
  PrimaryDamageRadius         = 100.0      
  SecondaryDamage             = 125.0          
  SecondaryDamageRadius       = 110.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 670.0
  MinimumAttackRange          = 160.0
  PreAttackDelay              = 500
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_ScudLauncherIgnition
  ProjectileObject            = SCUDMissilePlusTwo
  ProjectileExhaust           = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX      = WeaponFX_SCUDMissileDetonationExplosive
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound                   = ScudLauncherWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000            ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
End

;-----------------------------------------------------------------------------------
Weapon CINE_SCUDLauncherGunExplosive
  PrimaryDamage               = 530.0            
  PrimaryDamageRadius         = 100.0      
  SecondaryDamage             = 120.0          
  SecondaryDamageRadius       = 110.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 660.0
  MinimumAttackRange          = 160.0
  PreAttackDelay              = 500
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_ScudLauncherIgnition
  ProjectileObject            = CINE_SCUDMissile
  ProjectileExhaust           = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX      = WeaponFX_SCUDMissileDetonationExplosive
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  FireSound                   = ScudLauncherWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000            ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunToxin
  PrimaryDamage = 200.0            
  PrimaryDamageRadius = 50.0      
  SecondaryDamage = 25.0          
  SecondaryDamageRadius = 70.0    
  ScatterRadiusVsInfantry     = 40.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 575.0
  MinimumAttackRange = 180.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissile
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationToxin
  ProjectileDetonationOCL = OCL_PoisonFieldMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunToxinPlusOne
  PrimaryDamage = 240.0            
  PrimaryDamageRadius = 60.0      
  SecondaryDamage = 75.0          
  SecondaryDamageRadius = 80.0    
  ScatterRadiusVsInfantry     = 35.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 575.0
  MinimumAttackRange = 200.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissilePlusOne
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationToxin
  ProjectileDetonationOCL = OCL_PoisonFieldMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunToxinPlusTwo
  PrimaryDamage = 280.0            
  PrimaryDamageRadius = 80.0      
  SecondaryDamage = 70.0          
  SecondaryDamageRadius = 80.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 600.0
  MinimumAttackRange = 200.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissilePlusTwo
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationToxin
  ProjectileDetonationOCL = OCL_PoisonFieldMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunAnthrax
  PrimaryDamage = 250.0            
  PrimaryDamageRadius = 50.0      
  SecondaryDamage = 35.0          
  SecondaryDamageRadius = 70.0    
  ScatterRadiusVsInfantry     = 40.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 475.0
  MinimumAttackRange = 140.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissile
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationAnthrax
  ProjectileDetonationOCL = OCL_PoisonFieldUpgradedMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunAnthraxPlusOne
  PrimaryDamage = 290.0            
  PrimaryDamageRadius = 70.0      
  SecondaryDamage = 50.0          
  SecondaryDamageRadius = 80.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 400.0
  MinimumAttackRange = 160.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissilePlusOne
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationAnthrax
  ProjectileDetonationOCL = OCL_PoisonFieldUpgradedMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon SCUDLauncherGunAnthraxPlusTwo
  PrimaryDamage = 310.0            
  PrimaryDamageRadius = 95.0      
  SecondaryDamage = 85.0          
  SecondaryDamageRadius = 80.0    
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 430.0
  MinimumAttackRange = 120.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissilePlusTwo
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = WeaponFX_SCUDMissileDetonationAnthrax
  ProjectileDetonationOCL = OCL_PoisonFieldUpgradedMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon StingerSiteDeathConcussion
  PrimaryDamage = 10.0            
  PrimaryDamageRadius = 45.0      
  AttackRange = 130.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
; This is the weapon used by crushing buildings.  It's supposed to kill everything it hits.
Weapon ToppledStructureWeapon
  PrimaryDamage = 9999.0            
  PrimaryDamageRadius = 40.0      
  AttackRange = 120.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
; This is the weapon used by avalanche bits.  It's supposed to crush everything it hits.
Weapon AvalancheWeapon
  PrimaryDamage = 9999.0            
  PrimaryDamageRadius = 80.0      
  AttackRange = 80.0
  DamageType = CRUSH         
  DeathType = CRUSHED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 100                   ; time between shots, msec
  ClipSize = 0                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
End

;------------------------------------------------------------------------------
Weapon NapalmMissileWeapon
  PrimaryDamage               = 95.0            
  PrimaryDamageRadius         = 9.0      
  SecondaryDamage             = 40.0          
  SecondaryDamageRadius       = 30.0  
  DamageType                  = JET_MISSILES ; since creates FireField to do the flame damage
  DeathType                   = EXPLODED
  AttackRange                 = 350.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30
  DelayBetweenShots           = 300             ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_NapalmMissileDetonation
  ProjectileDetonationOCL     = OCL_FireFieldSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 8
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = FirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End
 
;------------------------------------------------------------------------------
Weapon BlackNapalmMissileWeapon
  PrimaryDamage               = 110.0            
  PrimaryDamageRadius         = 10.5      
  SecondaryDamage             = 50.0          
  SecondaryDamageRadius       = 30.0  
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  AttackRange                 = 350.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30 
  DelayBetweenShots           = 300             ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_BlackNapalmExplosion
  ProjectileDetonationOCL     = OCL_FireFieldUpgradedSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 8
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = BlackNapalmFirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon NukeMissileWeapon
  PrimaryDamage               = 350.0            
  PrimaryDamageRadius         = 175.0      
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  AttackRange                 = 375.0
  MinimumAttackRange          = 60.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR   
  AcceptableAimDelta          = 30 
  DelayBetweenShots           = 300             ; time between shots, msec
  ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = Nuke_WeaponFX_NukeCannon
  ProjectileDetonationOCL     = OCL_RadiationFieldSmall
  DamageDealtAtSelfPosition   = Yes
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  ShowsAmmoPips               = Yes
  ShockWaveAmount   = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 75.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.50    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.

End

;------------------------------------------------------------------------------
Weapon BattleshipBogusGun
  ; We need to have the weapon do some damage, or attacking will not occur because it's
  ; rejected as not having any kind of weapon that does damage
  PrimaryDamage = 0.00001         ; does no damage, because the gun firing is only for show, anyway...
                                  ; please DON'T adjust this value. to adjust the damage really done by battleships,
                                  ; adjust the damage values in BattleshipTargetDamagedWeapon!
  PrimaryDamageRadius = 0.0       
  AttackRange = 99999.0
  DamageType = UNRESISTABLE
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_BattleshipBogusGun
  FireSound = BattleshipWeapon
  RadiusDamageAffects = ENEMIES NEUTRALS
  DelayBetweenShots = 750         ; time between shots, msec
  ClipSize = 3                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1500           ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon BattleshipUSSBenderGun
  PrimaryDamage = 400.0         
  PrimaryDamageRadius = 35.0  
  AttackRange = 99999.0
  ScatterRadius         = 35.0
  ScatterRadiusVsInfantry = 40.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 500.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = USSBenderGunShell
  FireFX = WeaponFX_BattleshipBogusGun
  ProjectileDetonationFX = FX_StrategyCenterBarrage
  FireSound = BattleshipWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 750         ; time between shots, msec
  ClipSize = 3                    ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip = No            ;No longer reloads (fired from special power only)
End

;------------------------------------------------------------------------------
Weapon BattleshipDemoGun
  ; We need to have the weapon do some damage, or attacking will not occur because it's
  ; rejected as not having any kind of weapon that does damage
  PrimaryDamage = 380.0         
                               
  PrimaryDamageRadius = 45.0  
  AttackRange = 99999.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 525.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = GenericTankShell
  FireFX = WeaponFX_BattleshipBogusGun
  ProjectileDetonationFX = FX_StrategyCenterBarrage
  FireSound = BattleshipWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 750         ; time between shots, msec
  ClipSize = 3                    ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip = No            ;No longer reloads (fired from special power only)
End

;------------------------------------------------------------------------------
Weapon BattleshipTargetDamagedWeapon
  PrimaryDamage = 100.0
  PrimaryDamageRadius = 40.0
  SecondaryDamage = 30.0
  SecondaryDamageRadius = 65.0
  AttackRange = 0.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 999999
  ProjectileObject = NONE
  FireFX = WeaponFX_BattleshipTargetExplode
  FireSound = ExplosionBattleshipTarget
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                      ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon CINE_u02_BattleshipTargetDamagedWeapon
  PrimaryDamage = 1000.0
  PrimaryDamageRadius = 50.0
  SecondaryDamage = 300.0
  SecondaryDamageRadius = 65.0
  AttackRange = 0.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 999999
  ProjectileObject = NONE
  FireFX = WeaponFX_BattleshipTargetExplode
  FireSound = ExplosionBattleshipTarget
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                      ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon StructureMineWeapon
  PrimaryDamage = 200.0            
  PrimaryDamageRadius = 5.0      
  SecondaryDamage = 100.0          
  SecondaryDamageRadius = 7.0    
  AttackRange = 0.0
  DamageType = LAND_MINE
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  FireFX = WeaponFX_MineDetonation
  RadiusDamageAffects = ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon StructureUpgradeEMPMineWeapon
  PrimaryDamage = 100.0            
  PrimaryDamageRadius = 5.0      
  SecondaryDamage = 100.0          
  SecondaryDamageRadius = 7.0    
  AttackRange = 0.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  FireFX = WeaponFX_UpgradeMineDetonation
  RadiusDamageAffects = ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon ClusterMineWeapon
  PrimaryDamage = 200.0            
  PrimaryDamageRadius =6.0      
  SecondaryDamage = 100.0          
  SecondaryDamageRadius = 8.0    
  AttackRange = 0.0
  DamageType = LAND_MINE
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  FireFX = WeaponFX_MineDetonation
  RadiusDamageAffects = ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon BattleDroneMachineGun
  PrimaryDamage = 4
  PrimaryDamageRadius = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange = 165.0
  DamageType = SMALL_ARMS
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_TechnicalGunFire
  FireSound = BattleDroneWeapon
  RadiusDamageAffects = ENEMIES NEUTRALS
  DelayBetweenShots = 100         ; time between shots, msec
  ClipSize = 120                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 900              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; APBullets
End



;------------------------------------------------------------------------------
;----  ANGRY MOB  WEAPONS  ----------------------------------------------------
;------------------------------------------------------------------------------
Weapon GLAAngryMobNexusHarmlessWeapon 
  
  ;;; allows AI to set targets and victims and condition states
  ;;; without really doing any harm 
  
  PrimaryDamage = 0.001
  PrimaryDamageRadius = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange = 90.0 ;70.0 ;; small so the whole mob can get in close
  DamageType = UNRESISTABLE
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 99999        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; Armor Piercing Bullets
End

;------------------------------------------------------------------------------
Weapon GLAAngryMobRockProjectileWeapon 
  PrimaryDamage = 15.0 ;10.0
  PrimaryDamageRadius = 1.0       
  AttackRange = 100.0 
  DamageType = MOLOTOV_COCKTAIL  ;SMALL_ARMS
  DeathType = NORMAL
  WeaponSpeed = 130          ; dist/sec (huge value == effectively instant)
  ProjectileObject = GLAAngryMobRockProjectileObject
  FireFX = NONE
  FireSound = AngryMobWeaponMolotov
  RadiusDamageAffects = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots = 500 ;3000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  PreAttackDelay = 500 ;2000       ; linked to the length of throw animation
  PreAttackType = PER_SHOT ; Do the delay every single shot
  ProjectileCollidesWith = STRUCTURES WALLS 

End
;------------------------------------------------------------------------------
Weapon GLAAngryMobMolotovCocktailProjectileWeapon 
  PrimaryDamage = 40.0 ;40.0          
  PrimaryDamageRadius = 11.0       
  AttackRange = 120.0 
  MinimumAttackRange = 12; 40.0
  DamageType = MOLOTOV_COCKTAIL  ;used only by this weapon.  Splits off so Dragon Tanks and Toxin Trucks are resistant.  
  DeathType = NORMAL
  WeaponSpeed = 60 ;          
  ProjectileObject = GLAAngryMobMolotovCocktailProjectileObject
  FireFX = NONE
  RadiusDamageAffects = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots = 500 ;3000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  PreAttackDelay = 500 ;2000    ; linked to the length of throw animation
  PreAttackType = PER_SHOT ; Do the delay every single shot
  ProjectileDetonationFX = WeaponFX_MolotovCocktailDetonation
  MaxTargetPitch = 57 ; this is important so that they do not lob the bottles on their mobmates

  ProjectileCollidesWith = STRUCTURES WALLS 
End


;------------------------------------------------------------------------------
Weapon GLAAngryMobPistolWeapon
  PrimaryDamage         = 10.0
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 150.0
  DamageType            = MOLOTOV_COCKTAIL  ;SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound             = AngryMobWeaponPistol 
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 250               ; time between shots, msec
  ClipSize              = 8                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 3000              ; how long to reload a Clip, msec
  AutoReloadsClip       = Yes 
End

;------------------------------------------------------------------------------
Weapon GLAAngryMobAK47Weapon 
  PrimaryDamage         = 20.0 ;10.0
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 170.0
  DamageType            = MOLOTOV_COCKTAIL  ;SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 9000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_RangerAdvancedCombatRifleFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicRangerAdvancedCombatRifleFire
  FireSound             = AngryMobWeaponAK47
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 250         ; time between shots, msec
  ClipSize              = 30                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1250              ; how long to reload a Clip, msec
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; Armor Piercing Bullets
End

;------------------------------------------------------------------------------
Weapon GLAAngryMobAK47NoDamageWeapon 
  PrimaryDamage         = 0.001 ; THIS IS A SPECIAL NO-DAMAGE AK47
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 120.0
  DamageType            = MOLOTOV_COCKTAIL  ;SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 9999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_RangerAdvancedCombatRifleFire
  VeterancyFireFX       = HEROIC WeaponFX_HeroicRangerAdvancedCombatRifleFire
  FireSound             = AngryMobWeaponAK47
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 99999         ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; Armor Piercing Bullets
End

;------------------------------------------------------------------------------
Weapon WorkerMineDisarmingWeapon 
  PrimaryDamage = 1.0             ; this isn't really used, but must be nonzero for targeting to work well
  AttackRange = 5.0
  DamageType = DISARM
  DeathType = NORMAL
  ProjectileObject = NONE
  FireFX = WeaponFX_WorkerMineDisarming
  DelayBetweenShots = 1000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  AntiGround = No
  AntiProjectile = No
  AntiSmallMissile = No
  AntiMine = Yes
  PreAttackDelay = 1000           ; we have to wave our magic wand over it a bit
  PreAttackType = PER_SHOT ; Do the delay every single shot
  ContinueAttackRange = 100        ; after disarming a mine, look for additional mines within this dist to disarm
End

;------------------------------------------------------------------------------
Weapon DozerMineDisarmingWeapon 
  PrimaryDamage = 1.0             ; this isn't really used, but must be nonzero for targeting to work well
  AttackRange = 5.0
  DamageType = DISARM
  DeathType = NORMAL
  ProjectileObject = NONE
  FireFX = WeaponFX_DozerMineDisarming
  DelayBetweenShots = 0        ; time between shots, msec
  ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 4000             ; how long to reload a Clip, msec
  AntiGround = No
  AntiProjectile = No
  AntiSmallMissile = No
  AntiMine = Yes
  PreAttackDelay = 1200           ; this is the natural duration of PRE scooping animation
  PreAttackType = PER_ATTACK ; Do the delay every attack
  ContinueAttackRange = 100        ; after disarming a mine, look for additional mines within this dist to disarm
End

;------------------------------------------------------------------------------
Weapon FakeStructureDetonationWeapon
  PrimaryDamage = 380.0            
  PrimaryDamageRadius = 85.0      
  SecondaryDamage = 70.0          
  SecondaryDamageRadius = 240.0    
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  FireFX = WeaponFX_DemoTrapDetonation
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon DemoTrapDetonationWeapon
  PrimaryDamage = 630.0            
  PrimaryDamageRadius = 35.0      
  SecondaryDamage = 410.0          
  SecondaryDamageRadius = 55.0    
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  FireFX = WeaponFX_DemoTrapDetonation
  PlayFXWhenStealthed = Yes
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon DummyWeapon
  ;Nothing -- dummy weapon
End

;------------------------------------------------------------------------------
; This weapon kills itself (to presumably trigger detonations on death)
Weapon SuicideWeapon
  LeechRangeWeapon = Yes
  AttackRange = 1.0
  PrimaryDamage = 999999.0            
  PrimaryDamageRadius = 1.0      
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
;This does no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon TerroristSuicideWeaponBioBombEffect
  FireFX = WeaponFX_BombTruckBioBombDetonation
  FireOCL = OCL_PoisonFieldSmall
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
; This weapon kills itself (to presumably trigger detonations on death)
Weapon TerroristSuicideWeapon
  LeechRangeWeapon = Yes
  AttackRange = 1.0
  PrimaryDamage = 999999.0            
  PrimaryDamageRadius = 1.0      
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  ;PreAttackDelay = 600             ;766 matches the animation timing his detonating
End

;------------------------------------------------------------------------------
; This weapon kills itself (to presumably trigger detonations on death)
; WITHOUT BEING PERMITTED TO TARGET ENEMIES WITH IT!!!!
Weapon TerroristSuicideNotARealWeapon
  LeechRangeWeapon = Yes
  AttackRange = 0.0
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 0.0      
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SUICIDE
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  ;PreAttackDelay = 600             ;766 matches the animation timing his detonating
End


;------------------------------------------------------------------------------
Weapon ConvoyTruckSuicideWeapon
  LeechRangeWeapon = Yes
  AttackRange = 1.0
  PrimaryDamage = 999999.0            
  PrimaryDamageRadius = 1.0      
  DamageDealtAtSelfPosition = Yes 
  RadiusDamageAffects = SELF SUICIDE
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 

  FireSound = MisGLA07Convoy16
End

;------------------------------------------------------------------------------
;The basic explosive damage inflicted to nearby units when detonated.
;------------------------------------------------------------------------------
Weapon BombTruckDefaultBombDamage
  PrimaryDamage = 1200.0            
  PrimaryDamageRadius = 60.0      
  SecondaryDamage = 140.0          
  SecondaryDamageRadius = 75.0   
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  ;**** DON'T USE ANY EFFECTS!!! ****
End

;------------------------------------------------------------------------------
;A larger explosive damage inflicted immediately to nearby units if the 
;bomb-truck has the high-explosive upgrade.
;------------------------------------------------------------------------------
Weapon BombTruckHighExplosionBombDamage
  PrimaryDamage = 2300.0            
  PrimaryDamageRadius = 95.0      
  SecondaryDamage = 240.0          
  SecondaryDamageRadius = 95.0 
  DamageType = EXPLOSION
  DeathType = EXPLODED
  ProjectileObject = NONE
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 

  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%
  ;**** DON'T USE ANY EFFECTS!!! ****
End

;------------------------------------------------------------------------------
;DEMO GENERAL VARIATION
;The basic explosive damage inflicted to nearby units when detonated.
;------------------------------------------------------------------------------
Weapon Demo_BombTruckDefaultBombDamage
  PrimaryDamage = 1400.0            
  PrimaryDamageRadius = 60.0      
  SecondaryDamage = 130.0          
  SecondaryDamageRadius = 75.0   
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  ;**** DON'T USE ANY EFFECTS!!! ****
End

;------------------------------------------------------------------------------
;DEMO GENERAL VARIATION
;A larger explosive damage inflicted immediately to nearby units if the 
;bomb-truck has the high-explosive upgrade.
;------------------------------------------------------------------------------
Weapon Demo_BombTruckHighExplosionBombDamage
  PrimaryDamage = 2500.0            
  PrimaryDamageRadius = 80.0      
  SecondaryDamage = 210.0          
  SecondaryDamageRadius = 95.0 
  DamageType = EXPLOSION
  DeathType = EXPLODED
  ProjectileObject = NONE
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 

  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%
  ;**** DON'T USE ANY EFFECTS!!! ****
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon BombTruckDefaultBombEffect
  FireFX = WeaponFX_BombTruckDefaultBombDetonation
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon BombTruckBioBombEffect
  FireFX = WeaponFX_BombTruckBioBombDetonation
  FireOCL = OCL_PoisonFieldMedium
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon BombTruckAnthraxBombEffect
  FireFX = WeaponFX_BombTruckAnthraxBombDetonation
  FireOCL = OCL_PoisonFieldUpgradedMedium
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon BombTruckHighExplosiveBombEffect
  FireFX = WeaponFX_BombTruckHighExplosiveBombDetonation
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon BombTruckHighExplosiveBioBombEffect
  FireFX = WeaponFX_BombTruckHighExplosiveBioBombDetonation
  FireOCL = OCL_PoisonFieldMedium
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon BombTruckHighExplosiveAnthraxBombEffect
  FireFX = WeaponFX_BombTruckHighExplosiveAnthraxBombDetonation
  FireOCL = OCL_PoisonFieldUpgradedMedium
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon BombTruckAnthraxGammaBombEffect
  FireFX = WeaponFX_BombTruckAnthraxGammaBombDetonation
  FireOCL = OCL_PoisonFieldGammaMedium
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon Demo_BombTruckDefaultBombEffect
  FireFX = Demo_WeaponFX_BombTruckDefaultBombDetonation ;red variation
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
;These do no damage at all -- just effects and setting up toxic fields
;------------------------------------------------------------------------------
Weapon Demo_BombTruckHighExplosiveBombEffect
  FireFX = Demo_WeaponFX_BombTruckHighExplosiveBombDetonation ;red variation
  FireSound = NoSound ; BombTruckBioBombDetonation
End

;------------------------------------------------------------------------------
Weapon EruptionOfToxicGooWeaponLarge
  PrimaryDamage = 80.0
  PrimaryDamageRadius = 60.0
  SecondaryDamage = 35.0
  SecondaryDamageRadius = 65.0
  AttackRange = 0.0
  DamageType = POISON
  DeathType = POISONED
  WeaponSpeed = 999999
  ProjectileObject = NONE
  FireFX = WeaponFX_EruptionOfToxicGooLarge
  FireSound = ExplosionBattleshipTarget
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                      ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon EruptionOfToxicGooWeaponSmall
  PrimaryDamage = 40.0
  PrimaryDamageRadius = 40.0
  SecondaryDamage = 20.0
  SecondaryDamageRadius = 55.0
  AttackRange = 0.0
  DamageType = POISON
  DeathType = POISONED
  WeaponSpeed = 999999
  ProjectileObject = NONE
  FireFX = WeaponFX_EruptionOfToxicGooSmall
  FireSound = ExplosionBattleshipTarget
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                      ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                ; how long to reload a Clip, msec
End


;------------------------------------------------------------------------------
Weapon MilitiaTankGun
  PrimaryDamage = 85.5
  PrimaryDamageRadius = 8.0
  ScatterRadiusVsInfantry     = 9.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 175.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 6                            ; angle to deflect the model when firing
  ProjectileObject = GenericTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = MilitiaTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
   
  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon ArtilleryBarrageDamageWeapon
  PrimaryDamage         = 140.0     ;GS changed to what it was secretly doing pending review
  PrimaryDamageRadius   = 70.0      
  AttackRange           = 120.0
  DamageType            = EXPLOSION         
  DeathType             = EXPLODED
  WeaponSpeed           = 99999.0             
  ProjectileDetonationFX = FX_ArtilleryBarrage
  RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots     = 0    ; time between shots, msec
  ClipSize              = 1    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0    ; how long to reload a Clip, msec
  AutoReloadsClip       = No 
End

;------------------------------------------------------------------------------
Weapon VehicleCrashesIntoBuildingWeapon
  PrimaryDamage         = 50.0        ; token amount of damage    
  PrimaryDamageRadius   = 60.0      
  AttackRange           = 0
  DamageType            = EXPLOSION
  DeathType             = EXPLODED
  ProjectileObject      = NONE
  FireFX                = FX_VehicleCrashesIntoBuilding
  FireOCL               = OCL_VehicleCrashesIntoBuilding
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
End

;------------------------------------------------------------------------------
Weapon VehicleCrashesIntoNonBuildingWeapon
  PrimaryDamage         = 50.0        ; token amount of damage    
  PrimaryDamageRadius   = 60.0      
  AttackRange           = 0
  DamageType            = CRUSH
  DeathType             = CRUSHED
  ProjectileObject      = NONE
  ; no FX or OCL.
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
End

;------------------------------------------------------------------------------
Weapon ArtilleryPlatformGun
  PrimaryDamage         = 120.0            
  PrimaryDamageRadius   = 30.0      
  ScatterRadius         = 35.0
  ScatterRadiusVsInfantry = 45.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 330.0 ;420.0
  MinimumAttackRange = 80.0
  MinTargetPitch = -10                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 80                          ; ditto
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 150                           ; dist/sec 
  WeaponRecoil = 8                            ; angle to deflect the model when firing
  ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range                           ; dist/sec 
  ProjectileObject = StrategyCenterArtilleryShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX = FX_StrategyCenterBarrage
  FireSound = StrategyCenter_ArtilleryRound
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 3000              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End



; -----------------------------------------------------------------------------

;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
; GENERALS CHALLENGE WEAPONS
; -----------------------------------------------------------------------------
;------------------------------------------------------------------------------




;------------------------------------------------------------------------------
; CHEMICAL GENERAL
;------------------------------------------------------------------------------
Weapon GC_Chem_StingerMissileWeaponBeta
  PrimaryDamage = 40.0            
  PrimaryDamageRadius = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 225.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 750               ; ignored for projectile weapons
  ProjectileObject = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
; ProjectileDetonationOCL = OCL_PoisonFieldUpgradedSmall
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith = STRUCTURES
End

Weapon GC_Chem_StingerMissileWeaponAirBeta
  PrimaryDamage = 40.0            
  PrimaryDamageRadius = 10.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 400.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  AntiBallisticMissile = Yes
End

Weapon GC_Chem_StingerMissileWeaponGamma
  PrimaryDamage = 60.0            
  PrimaryDamageRadius = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 225.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 750               ; ignored for projectile weapons
  ProjectileObject = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaustGamma
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
; ProjectileDetonationOCL = OCL_PoisonFieldGammaSmall
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith = STRUCTURES
End

Weapon GC_Chem_StingerMissileWeaponAirGamma
  PrimaryDamage = 60.0            
  PrimaryDamageRadius = 10.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 400.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaustGamma
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  AntiBallisticMissile = Yes
End


;------------------------------------------------------------------------------
Weapon GC_Chem_TunnelDefenderRocketWeaponBeta
  PrimaryDamage               = 60.0            
  PrimaryDamageRadius         = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 175.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
; ProjectileDetonationOCL     = OCL_PoisonFieldUpgradedSmall
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

Weapon GC_Chem_TunnelDefenderRocketWeaponGamma
  PrimaryDamage               = 65.0            
  PrimaryDamageRadius         = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 175.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
; ProjectileDetonationOCL     = OCL_PoisonFieldGammaSmall
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

Weapon GC_Chem_TunnelDefenderRocketWeaponBetaAir
  PrimaryDamage               = 65.0            
  PrimaryDamageRadius         = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 175.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

Weapon GC_Chem_TunnelDefenderRocketWeaponGammaAir
  PrimaryDamage               = 70.0            
  PrimaryDamageRadius         = 5.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 175.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = GC_Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

;------------------------------------------------------------------------------
Weapon GC_Chem_GLARebelGunBeta 
  PrimaryDamage               = 10.0  ;20.0            
  PrimaryDamageRadius         = 12.0  ;24.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 150.0 ;100.0
  MinimumAttackRange          = 0 ;20.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectileUpgraded
  FireFX                      = WeaponFX_ToxinTruckFlameWeaponUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonationUpgraded
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 50                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

Weapon GC_Chem_GLARebelGunGamma
  PrimaryDamage               = 16.0  ;60.0            
  PrimaryDamageRadius         = 14.0  ;26.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 150.0 ;150.0
  MinimumAttackRange          = 0 ;20.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = GC_Chem_ToxinStreamProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinFlameWeaponGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinMissileDetonationGamma
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 20                ; time between shots, msec
  ClipSize                    = 50                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 20                   ; how long to reload a Clip, msec
  ProjectileStreamName        = GC_Chem_ToxinProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End



;------------------------------------------------------------------------------
Weapon Chem_TunnelNetworkGunBeta
  PrimaryDamage               = 14.5 ;23.0            
  PrimaryDamageRadius         = 13   ;24.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 175.0
  MinimumAttackRange          = 0 ;20.0
  DamageType                  = POISON
  DeathType                   = POISONED_BETA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckStreamProjectileUpgraded
  FireFX                      = WeaponFX_ToxinTruckFlameWeaponUpgraded
  ProjectileDetonationFX      = WeaponFX_ToxinTruckMissileDetonationUpgraded
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 100                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = ToxinTruckProjectileStreamUpgraded ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon Chem_TunnelNetworkGunGamma
  PrimaryDamage               = 16.0  ;60.0            
  PrimaryDamageRadius         = 15.0  ;29.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 175.0
  MinimumAttackRange          = 0 ;20.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = GC_Chem_ToxinStreamProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinFlameWeaponGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinMissileDetonationGamma
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 100                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = GC_Chem_ToxinProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon Chem_LargePoisonFieldWeaponGamma
  PrimaryDamage = 45.0            
  PrimaryDamageRadius = 140.0      
  AttackRange = 25.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED_GAMMA
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = GC_Chem_WeaponFX_LargePoisonFieldWeaponGamma ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon Chem_MediumPoisonFieldWeaponGamma
  PrimaryDamage = 3.5            
  PrimaryDamageRadius = 80.0      
  AttackRange = 20.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED_GAMMA
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = GC_Chem_WeaponFX_MediumPoisonFieldWeaponGamma ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon Chem_SmallPoisonFieldWeaponGamma
  PrimaryDamage = 2.5            
  PrimaryDamageRadius = 7.5     
  AttackRange = 18.0
  MinimumAttackRange = 10.0
  DamageType = POISON
  DeathType = POISONED_GAMMA
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = GC_Chem_WeaponFX_SmallPoisonFieldWeaponGamma ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 500                ; time between shots, msec
End


;------------------------------------------------------------------------------
Weapon Chem_ToxinTruckGunGamma
  PrimaryDamage               = 24.5
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 120.0
  MinimumAttackRange          = 10.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = GC_Chem_ToxinStreamProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinFlameWeaponGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinMissileDetonationGamma
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = GC_Chem_ToxinProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon Chem_ToxinTruckGunGammaPlusOne
  PrimaryDamage               = 28.5
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 135.0
  MinimumAttackRange          = 10.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = GC_Chem_ToxinStreamProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinFlameWeaponGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinMissileDetonationGamma
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = GC_Chem_ToxinProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon Chem_ToxinTruckGunGammaPlusTwo
  PrimaryDamage               = 32.5
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 140.0
  MinimumAttackRange          = 10.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = GC_Chem_ToxinStreamProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinFlameWeaponGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinMissileDetonationGamma
  FireSound                   = ToxinTractorWeaponLoop
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40                ; time between shots, msec
  ClipSize                    = 30                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 40                   ; how long to reload a Clip, msec
  ProjectileStreamName        = GC_Chem_ToxinProjectileStream ; Drawing helper for this weapon.  Tracks all projectiles in air
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon HelixMinigunWeapon
  PrimaryDamage               = 22.0
  PrimaryDamageRadius         = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange                 = 185.0      
  DamageType                  = COMANCHE_VULCAN
  DeathType                   = NORMAL
  WeaponSpeed                 = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject            = GenericMachineGunProjectile
  ProjectileDetonationFX      = WeaponFX_NewGenericMachineGunImpacts2
  FireSound                   = SpectreGunshipGattlingWeapon
  FireFX                      = WeaponFX_SpectreGattlingMuzzleFlash
  VeterancyFireFX             = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 100         ; time between shots, msec
  ClipSize                    = 500                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon NapalmBombWeapon
  PrimaryDamage               = 95.0            
  PrimaryDamageRadius         = 9.0      
  SecondaryDamage             = 60.0          
  SecondaryDamageRadius       = 45.0  
  DamageType                  = EXPLOSION ; since creates OCL_FirestormSmall to do the flame damage
  DeathType                   = EXPLODED
  WeaponSpeed = 10                           ; dist/sec 
  AttackRange                 = 10.0
  MinimumAttackRange          = 0.0  
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AntiGround                  = Yes
  FireOCL     = OCL_FirestormSmall
  DamageDealtAtSelfPosition   = Yes
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon BlackNapalmBombWeapon
  PrimaryDamage               = 110.0            
  PrimaryDamageRadius         = 12.0      
  SecondaryDamage             = 70.0          
  SecondaryDamageRadius       = 50.0  
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed = 10                           ; dist/sec 
  AttackRange                 = 10.0
  MinimumAttackRange          = 0 
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AntiGround                  = Yes
  FireOCL     = OCL_BlackNapalmFirestormSmall
  DamageDealtAtSelfPosition   = Yes
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
End

;------------------------------------------------------------------------------
Weapon Chem_ToxinTruckSprayerGamma
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 0.0      
  SecondaryDamage             = 3.5          
  SecondaryDamageRadius       = 75.0    
  AttackRange                 = 10.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinTruckSprayNozzleGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinTruckSprayGroundGamma
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon Chem_ToxinTruckSprayerGammaPlusOne
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 0.0      
  SecondaryDamage             = 5.5          
  SecondaryDamageRadius       = 85.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinTruckSprayNozzleGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinTruckSprayGroundGamma
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon Chem_ToxinTruckSprayerGammaPlusTwo
  PrimaryDamage               = 0            
  PrimaryDamageRadius         = 0.0      
  SecondaryDamage             = 6.5          
  SecondaryDamageRadius       = 90.0    
  AttackRange                 = 15.0
  DamageType                  = POISON
  DeathType                   = POISONED_GAMMA
  WeaponSpeed                 = 600                     ;  dist/sec 
  WeaponRecoil                = 0                      ; angle to deflect the model when firing
  ProjectileObject            = ToxinTruckSprayProjectile
  FireFX                      = GC_Chem_WeaponFX_ToxinTruckSprayNozzleGamma
  ProjectileDetonationFX      = GC_Chem_WeaponFX_ToxinTruckSprayGroundGamma
  FireSound                   = ToxinTractorContaminate
  FireSoundLoopTime           = 80                ; loop the firing sound until there's this much delay between shots 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 200                ; time between shots, msec
  ClipSize                    = 0                         ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                   ; how long to reload a Clip, msec
  ContinuousFireCoast         = 300 ; msec we can coast without firing before we lose Continuous Fire (thus creating poisonfield!)
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon RadarVanBogusWeapon
  PrimaryDamage = 0.00001
  PrimaryDamageRadius = 0.0
  AttackRange = 110.0 ;Needs to see farther and match it's unit's sight range -- else troop crawlers will get slaughtered against tanks!
  DamageType = SMALL_ARMS
  DeathType = NORMAL
  WeaponSpeed = 0         ; dist/sec 
  ProjectileObject = NONE
  FireFX = None
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  AcceptableAimDelta = 180
End

;------------------------------------------------------------------------------
Weapon  MicrowaveTankVehicleDisabler
  PrimaryDamage         = 24.0
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 200.0
  DamageType            = SUBDUAL_VEHICLE
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ;WeaponSpeed           = 10.0          ; dist/sec (huge value == effectively instant)
  LaserName             = MicrowaveDisableStream
  LaserBoneName         = WEAPON02
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  FireSound             = MicrowaveWeaponLoop
  FireSoundLoopTime = 120                ; loop the firing sound until there's this much delay between shots 
End

;------------------------------------------------------------------------------
Weapon  MicrowaveTankBuildingDisabler
  PrimaryDamage         = 50.0
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 200.0
  DamageType            = SUBDUAL_BUILDING
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ;WeaponSpeed           = 10.0          ; dist/sec (huge value == effectively instant)
  LaserName             = MicrowaveDisableStream
  LaserBoneName         = WEAPON02
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  FireSound             = MicrowaveWeaponLoop
  FireSoundLoopTime = 120                ; loop the firing sound until there's this much delay between shots 
End

;------------------------------------------------------------------------------
Weapon  MicrowaveTankBuildingClearer
  PrimaryDamage         = 1.0 ; Number of passengers to kill with each shot
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 155.0
  DamageType            = KILL_GARRISONED
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  LaserName             = MicrowaveDisableStream
  LaserBoneName         = WEAPON02
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
;  FireSound = AngryMobAmbientLoop
;  FireSoundLoopTime = 120                ; loop the firing sound until there's this much delay between shots 
End

;------------------------------------------------------------------------------
Weapon MicrowaveTankEmitterWeapon
  PrimaryDamage = 8.0            
  PrimaryDamageRadius = 100.0  
  DamageDealtAtSelfPosition = Yes
;  RadiusDamageAngle = 180  ; leaving field commented out in case anybody else wants to use it.  It's a good field.
  AttackRange = 160.0
  DamageType = MICROWAVE
  DeathType = BURNED 
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = FX_MicrowaveTankEmitter ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ENEMIES NOT_AIRBORNE
  DelayBetweenShots = 250                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon  ECMTankVehicleDisabler
  PrimaryDamage         = 24.0
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 210.0
  DamageType            = SUBDUAL_VEHICLE
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  LaserName             = ECMDisableStream
  LaserBoneName         = WEAPONA01
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  FireSound = FrequencyJammerWeaponLoop
  FireSoundLoopTime = 120                ; loop the firing sound until there's this much delay between shots 
End

;------------------------------------------------------------------------------
Weapon ECMTankMissileJammer
  PrimaryDamage = 140.0            
  PrimaryDamageRadius = 195.0      
  AttackRange = 20.0
  MinimumAttackRange = 10.0
  DamageType            = SUBDUAL_MISSILE
  DeathType             = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 
  RadiusDamageAffects = ENEMIES NEUTRALS 
  DelayBetweenShots = 650                ; time between shots, msec
  FireFX = FX_ECMTankMissileJammerPulse
End

;------------------------------------------------------------------------------
Weapon BattleShipGunReal
  PrimaryDamage         = 400.0            
  PrimaryDamageRadius   = 90.0      
  ScatterRadius         = 15.0
  ScatterRadiusVsInfantry = 15.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 20000.0
  MinimumAttackRange = 50.0
  MinTargetPitch = 45                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 80                          ; ditto
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 500                           ; dist/sec 
  WeaponRecoil = 8                            ; angle to deflect the model when firing
  ProjectileObject = GenericTankShell
  FireFX = WeaponFX_BattleshipBogusGun
  FireSound = BattleshipWeapon
  ProjectileDetonationFX = FX_ArtilleryBarrage
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 250.0              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 3                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 25000
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon NukeCannonNeutronWeapon
  PrimaryDamage           = 1.0
  PrimaryDamageRadius     = 10.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 600.0
  MinimumAttackRange      = 150.0
  DamageType              = EXPLOSION
  DeathType               = NORMAL
  WeaponSpeed             = 200         ; dist/sec 
  ProjectileObject        = NeutronCannonShell
  FireFX                  = WeaponFX_NukeCannonMuzzleFlash
  FireSound               = NukeCannonWeapon
  VeterancyFireFX         = HEROIC WeaponFX_HeroicNukeCannonMuzzleFlash
  ProjectileDetonationFX  = Neutron_WeaponFX_NukeCannon
  RadiusDamageAffects     = SUICIDE SELF ALLIES ENEMIES NEUTRALS NOT_SIMILAR NOT_AIRBORNE
  DelayBetweenShots       = 10000        ; time between shots, msec
  ClipSize                = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0            ; how long to reload a Clip, msec
End

Weapon NeutronMineWeapon
  PrimaryDamage           = 1.0
  PrimaryDamageRadius     = 10.0
  DamageType              = EXPLOSION
  DeathType               = NORMAL
  WeaponSpeed             = 0.01         ; dist/sec 
  ProjectileObject        = NeutronBlastObject
  FireFX                  = Neutron_WeaponFX_Mine
  RadiusDamageAffects     = SUICIDE SELF ENEMIES NEUTRALS NOT_SIMILAR NOT_AIRBORNE ;ALLIES (Kris: no longer effects allies)
  DelayBetweenShots       = 100000        ; time between shots, msec
  ClipSize                = 1            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0            ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon ChinaCarpetBombWeapon
  PrimaryDamage = 330.0            
  PrimaryDamageRadius = 95.0      
  AttackRange = 135.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR   
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon FireBaseHowitzerGun
  PrimaryDamage = 200.0
  PrimaryDamageRadius = 30.0
  ScatterRadiusVsInfantry = 12.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 600.0
  MinimumAttackRange = 55.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 290         ; dist/sec 
  MinWeaponSpeed = 75        
  ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range                           ; dist/sec 
  WeaponRecoil = 5                            ; angle to deflect the model when firing
  ProjectileObject = GenericTankShell
  FireFX           = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX  = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = FX_ArtilleryBarrage ;FX_FireBaseHowitzerExplosion
  FireSound = StrategyCenter_ArtilleryRound
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000               ; time between shots, msec
  ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 5000              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End


;------------------------------------------------------------------------------
Weapon Chem_ToxinShellWeaponGamma ; No extra damage, just lays down a damage field
  PrimaryDamage = 0.0            
  PrimaryDamageRadius = 1.0      
  AttackRange = 100.0
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  ProjectileObject = NONE
;  FireFX = WeaponFX_NapalmMissileDetonation
  FireOCL = OCL_PoisonFieldGammaSmall
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
End

Weapon Chem_SCUDLauncherGunAnthraxGamma
  PrimaryDamage = 350.0            
  PrimaryDamageRadius = 70.0      
  SecondaryDamage = 85.0          
  SecondaryDamageRadius = 60.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 655.0
  MinimumAttackRange = 170.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissile
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = GC_Chem_WeaponFX_SCUDMissileDetonationAnthrax
  ProjectileDetonationOCL = OCL_PoisonFieldGammaMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon Chem_SCUDLauncherGunAnthraxGammaPlusOne
  PrimaryDamage = 370.0            
  PrimaryDamageRadius = 80.0      
  SecondaryDamage = 25.0          
  SecondaryDamageRadius = 85.0    
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 675.0
  MinimumAttackRange = 200.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissilePlusOne
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = GC_Chem_WeaponFX_SCUDMissileDetonationAnthrax
  ProjectileDetonationOCL = OCL_PoisonFieldGammaMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End

;------------------------------------------------------------------------------
Weapon Chem_SCUDLauncherGunAnthraxGammaPlusTwo
  PrimaryDamage = 375.0            
  PrimaryDamageRadius = 90.0      
  SecondaryDamage = 70.0          
  SecondaryDamageRadius = 90.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 675.0
  MinimumAttackRange = 210.0
  PreAttackDelay = 500
  PreAttackType = PER_SHOT ; Do the delay every single shot
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  FireFX = FX_ScudLauncherIgnition
  ProjectileObject = SCUDMissilePlusTwo
  ProjectileExhaust = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX = GC_Chem_WeaponFX_SCUDMissileDetonationAnthrax
  ProjectileDetonationOCL = OCL_PoisonFieldGammaMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound = ScudLauncherWeapon
  DelayBetweenShots = 1
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 10000               ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

;  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher does not apply to poison missiles
End


;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;THE BABY SISTER OF ALL EXPLOSIONS... SNEAK ATTACK INITIAL "SHOVE"
;------------------------------------------------------------------------------
Weapon SneakAttackShockwaveWeaponSmall
  PrimaryDamage = 10            
  PrimaryDamageRadius = 35.0      
  AttackRange = 30.0

  ShockWaveAmount   = 10 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 10  ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.5    ; 0.5 means at the shockwave edge, the shockwave amount is 50%.


  DamageType = MELEE         
  DeathType = NORMAL
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 99999                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2500               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

Weapon SneakAttackShockwaveWeaponMedium
  PrimaryDamage = 50            
  PrimaryDamageRadius = 70      
  AttackRange = 30.0

  ShockWaveAmount   = 30 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 30 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.5    ;  means at the shockwave edge, the shockwave amount is 50%.


  DamageType = MELEE         
  DeathType = NORMAL
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 99999                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2500               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End


Weapon SneakAttackShockwaveWeaponBig
  PrimaryDamage = 80            
  PrimaryDamageRadius = 95      
  AttackRange = 30.0

  ShockWaveAmount   = 50 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 50.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.5    ; means at the shockwave edge, the shockwave amount is 50%.


  DamageType = MELEE         
  DeathType = NORMAL
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 99999                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2500               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon Tank_BattleMasterTankGun
  PrimaryDamage           = 125.0
  PrimaryDamageRadius     = 12.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 190.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 500                           ; dist/sec 
  WeaponRecoil            = 8                            ; angle to deflect the model when firing
  ProjectileObject        = BattleMasterTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ProjectileDetonationFX  = WeaponFX_GenericTankShellDetonation
  FireSound               = BattlemasterTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 500               ; time between shots, msec
  ClipSize                = 3                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 2000              ; how long to reload a Clip, msec
  WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon Tank_OverlordTankGun
  PrimaryDamage = 160 ;155.0
  PrimaryDamageRadius = 18.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage = 40.0
  SecondaryDamageRadius = 15.0
  AttackRange = 275.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 6                            ; angle to deflect the model when firing
  ProjectileObject = OverlordTankShell
  FireFX            = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX   = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = OverlordTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 300              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1500              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon Infa_MiniGunnerGun 
  PrimaryDamage         = 14.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 195.0
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound             = RedGuardMinigunnerWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 300               ; time between shots, msec
  ClipSize              = 100                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1200              ; how long to reload a Clip, msec
  ContinuousFireOne     = 6 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 12 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 1000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  AntiGround = Yes
End

;------------------------------------------------------------------------------
Weapon Infa_MiniGunnerGunAir
  PrimaryDamage         = 16.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 380.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound             = RedGuardMinigunnerWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 500               ; time between shots, msec
  ClipSize              = 100                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1250              ; how long to reload a Clip, msec
  ContinuousFireOne     = 6 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 12 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 1000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiGround            = No
End

;------------------------------------------------------------------------------
Weapon GC_Slth_GLAJarmenKellVehiclePilotSniperRifle
  PrimaryDamage = 1.0
  PrimaryDamageRadius = 0.0
  AttackRange = 625.0
  DamageType = KILL_PILOT
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound = JarmenKellWeaponSnipe
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0           ; time between shots, msec
  ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 5000          ; how long to reload a Clip, msec
  AutoReloadsClip = Yes
End

;------------------------------------------------------------------------------
Weapon GC_Slth_GLAJarmenKellRifle
  PrimaryDamage = 180.0
  PrimaryDamageRadius = 0.0
  AttackRange = 725.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = GC_Slth_JarmenKellBullet
  FireFX = WeaponFX_GenericMachineGunFire
  FireSound = JarmenKellWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon GC_Slth_QuadCannonSnipeGun
  PrimaryDamage = 130.0
  PrimaryDamageRadius = 3.0
  AttackRange = 410.0
  DamageType = SNIPER
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire                   ; so the ground lighting effects do not give away position while stealthed
  FireSound = PathfinderWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 100               ; time between shots, msec
  ClipSize = 12                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2500              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon Lazr_CrusaderTankGun
  PrimaryDamage           = 105.0
  PrimaryDamageRadius     = 6.0
  ScatterRadiusVsInfantry = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 195.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = BURNED
  WeaponSpeed             = 99999                           ; dist/sec 
  WeaponRecoil            = 4                            ; angle to deflect the model when firing
  LaserName               = Lazr_CrusaderLaserBeam
  LaserBoneName           = TurretMS01
  FireFX                  = Lazr_WeaponFX_LaserCrusader
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 2300               ; time between shots, msec
  ClipSize                = 2                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 4000              ; how long to reload a Clip, msec
  ProjectileCollidesWith  = STRUCTURES WALLS 
  DelayBetweenShots       = 2000               ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon Lazr_PaladinTankGun
  PrimaryDamage = 110.0
  PrimaryDamageRadius = 1.0
  ScatterRadiusVsInfantry =5.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 210.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = BURNED
  WeaponSpeed = 99999                           ; dist/sec 
  WeaponRecoil = 4                            ; angle to deflect the model when firing
  LaserName               = Lazr_CrusaderLaserBeam
  LaserBoneName           = TurretMS01
  FireFX                  = Lazr_WeaponFX_LaserCrusader 
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000        ; time between shots, msec
  ClipSize = 3                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 3200              ; how long to reload a Clip, msec
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon Lazr_PatriotMissileWeapon
  PrimaryDamage               = 120.0      
  PrimaryDamageRadius         = 2.0  
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 255.0
  DamageType                  = EXPLOSION
  DeathType                   = BURNED
  WeaponSpeed                 = 999999.0
  LaserName                   = Lazr_PatriotLaserBeam
  LaserBoneName               = WEAPONA01
  FireFX                      = Lazr_WeaponFX_LaserCrusader 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                   ; time between shots, msec
  ClipSize                    = 6                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
  AntiBallisticMissile        = No
  RequestAssistRange          = 200    ; when I fire, my object will look around for things of
  ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
  ProjectileCollidesWith      = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon Lazr_PatriotMissileWeaponAir
  PrimaryDamage               = 125.0            
  PrimaryDamageRadius         = 3.0
  AttackRange                 = 380.0
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 999999.0
  LaserName                   = Lazr_PatriotLaserBeam;Lazr_PaladinLaserBeam
  LaserBoneName               = WEAPONA01
  FireFX                      = Lazr_WeaponFX_LaserCrusader 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                   ; time between shots, msec
  ClipSize                    = 5                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = No
  AntiBallisticMissile        = Yes
  RequestAssistRange          = 200    ; when I fire, my object will look around for things of
  ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
  ProjectileCollidesWith      = STRUCTURES
End

;------------------------------------------------------------------------------
; For use with the Assisted Targeting Update.  No Assist Listing and longer range
Weapon Lazr_PatriotMissileAssistWeapon
  PrimaryDamage               = 95.0            
  PrimaryDamageRadius         = 3.0  
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 490.0 ; at least Regular's range + regular's request assist range
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = BURNED
  WeaponSpeed                 = 999999.0               ; ignored for projectile weapons
  LaserName                   = Lazr_PatriotLaserBeam;Lazr_PaladinLaserBeam
  LaserBoneName               = WEAPONA01
  FireFX                      = Lazr_WeaponFX_LaserCrusader;Lazr_WeaponFX_Laser 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                   ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
  ProjectileCollidesWith      = STRUCTURES
End


;------------------------------------------------------------------------------
Weapon GC_Chem_SuicideDynamitePackBeta
  PrimaryDamage = 500.0           ;was 150.0
  PrimaryDamageRadius = 28.0      ;was 6.0
  SecondaryDamage = 300.0         ;was 30.0
  SecondaryDamageRadius = 70.0    ;was 25.0
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonation
  FireSound = CarBomberDie
  FireOCL = OCL_PoisonFieldUpgradedMedium
End

;------------------------------------------------------------------------------
Weapon GC_Chem_SuicideDynamitePackGamma
  PrimaryDamage = 600.0           ;was 150.0
  PrimaryDamageRadius = 28.0      ;was 6.0
  SecondaryDamage = 300.0         ;was 30.0
  SecondaryDamageRadius = 75.0    ;was 25.0
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonation
  FireSound = CarBomberDie
  FireOCL = OCL_PoisonFieldGammaMedium
End


;------------------------------------------------------------------------------
Weapon GC_Chem_ScudStormWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 999999            ; not used for this weapon (it's "special")
  DamageType = EXPLOSION          ; not used for this weapon (it's "special")
  DeathType = EXPLODED
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = GC_Chem_ScudStormMissile
  ProjectileExhaust = ScudMissileExhaust
  FireFX = WeaponFX_ScudStormMissile
  FireSound = ScudStormLaunch
  ProjectileDetonationFX = ScudStormMissileDetonation
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = Min:100 Max:1000
  ClipSize = 9
  ClipReloadTime = 10000 ; give it time to sink into the ground          
  AutoReloadsClip = Yes
  ScatterRadius   = 0;changed to zero, unless you want to soften the results of the table below

  ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
  ; These specific points are an even distribution simulating a 150 ScatterRadius.
  ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
  ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.

  ScatterTargetScalar = 120; replaces the ScatterRadius, above, for scaling this table, below
  ScatterTarget = X: 0.000 Y: 0.133
  ScatterTarget = X: 0.133 Y:-0.200
  ScatterTarget = X:-0.067 Y: 0.667
  ScatterTarget = X: 0.300 Y: 0.300
  ScatterTarget = X: 0.767 Y: 0.000       
  ScatterTarget = X: 0.500 Y:-0.567        
  ScatterTarget = X:-0.333 Y:-0.800        
  ScatterTarget = X:-0.600 Y:-0.1333        
  ScatterTarget = X:-0.567 Y: 0.433        

  PreAttackDelay = 3000 ; Give the missiles time to get up, since we can't watch the animation. (If too short, missiles will pop up)
  PreAttackType = PER_CLIP ; Do the delay the first shot of each clip
  AcceptableAimDelta = 180 ; Don't need to turn at all.

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon Chem_ScudStormDamageWeaponGamma
  PrimaryDamage = 590.0
  PrimaryDamageRadius = 70.0 ;45.0
  SecondaryDamage = 250.0 ;150.0
  SecondaryDamageRadius = 260.0 ;90.0
  AttackRange = 255.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 600         ; dist/sec 
  FireFX = GC_Chem_WeaponFX_SCUDMissileDetonationAnthrax
  FireOCL = OCL_PoisonFieldGammaLarge  ; So this weapon will do normal damage, and create this object
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
End


;------------------------------------------------------------------------------
Weapon ListeningOutpostUpgradedDummyWeapon
  PrimaryDamage         = 0.1
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 90.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 1000               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AcceptableAimDelta    = 180 ; I'm not really shooting, my buddies are.  So no need to turn
End

;------------------------------------------------------------------------------
Weapon BattleBusPassengerDummyWeapon
  PrimaryDamage         = 0.001
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 90.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 10000               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AcceptableAimDelta    = 180 ; I'm not really shooting, my buddies are.  So no need to turn
End

;------------------------------------------------------------------------------
Weapon Infa_ChinaVehicleTroopCrawlerDummyWeapon
  PrimaryDamage         = 0.001
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 60.0 ; Small enough that the minigunners at their bones can shoot their gun.
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 10000               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  AcceptableAimDelta    = 180 ; I'm not really shooting, my buddies are.  So no need to turn
End

;------------------------------------------------------------------------------
Weapon BunkerBusterShockwaveWeaponSmall
  PrimaryDamage = 355            
  PrimaryDamageRadius = 75.0      
  AttackRange = 85.0

  ShockWaveAmount   = 80 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 70  ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.3    ; 0.3 means at the shockwave edge, the shockwave amount is 30%.


  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 99999                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2500               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End


;------------------------------------------------------------------------------
Weapon Demo_DemoTrapDetonationWeapon
  PrimaryDamage = 300.0            
  PrimaryDamageRadius = 35.0      
  SecondaryDamage = 530.0          
  SecondaryDamageRadius = 70.0    

  ShockWaveAmount   = 40 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 50  ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.7    ; 0.3 means at the shockwave edge, the shockwave amount is 30%.

  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  FireFX = WeaponFX_DemoTrapDetonation
  PlayFXWhenStealthed = Yes
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon Demo_SuicideDynamitePack  
  PrimaryDamage = 560.0           ;was 150.0
  PrimaryDamageRadius = 38.0      ;was 6.0
  SecondaryDamage = 300.0         ;was 30.0
  SecondaryDamageRadius = 55.0    ;was 25.0
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ENEMIES NEUTRALS NOT_SIMILAR ;ALLIES 
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_DemoSuicideDynamitePackDetonation
  FireSound = CarBomberDie
End


;------------------------------------------------------------------------------
Weapon Demo_SuicideDynamitePackPlusFire
  PrimaryDamage = 610.0           ;was 150.0
  PrimaryDamageRadius = 28.0      ;was 6.0
  SecondaryDamage = 420.0         ;was 30.0
  SecondaryDamageRadius = 60.0    ;was 25.0
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ENEMIES NEUTRALS NOT_SIMILAR ;ALLIES 
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_DemoSuicideDynamitePackDetonationPlusFire
  FireSound = CarBomberDie
End

;------------------------------------------------------------------------------
Weapon Demo_TerroristOnCombatBikeSuicideDynamitePack
  PrimaryDamage = 820.0           ;was 150.0
  PrimaryDamageRadius = 38.0      ;was 6.0
  SecondaryDamage = 520.0         ;was 30.0
  SecondaryDamageRadius = 70.0    ;was 25.0
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ENEMIES NEUTRALS NOT_SIMILAR ;ALLIES 
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonation
  FireSound = CarBomberDie
End


;------------------------------------------------------------------------------
Weapon Demo_TerroristOnCombatBikeSuicideDynamitePackPlusFire
  PrimaryDamage = 1100.0           ;was 150.0
  PrimaryDamageRadius = 48.0      ;was 6.0
  SecondaryDamage = 710.0         ;was 30.0
  SecondaryDamageRadius = 70.0    ;was 25.0
  AttackRange = 5.0       ; must be very close to use this weapon!
  DamageType = EXPLOSION
  DeathType = SUICIDED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF SUICIDE ENEMIES NEUTRALS NOT_SIMILAR ;ALLIES 
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
  FireFX = WeaponFX_SuicideDynamitePackDetonationPlusFire
  FireSound = CarBomberDie
End


;------------------------------------------------------------------------------
Weapon AirF_PointDefenseLaser
  PrimaryDamage       = 150.0
  PrimaryDamageRadius = 2.0
  AttackRange         = 85.0 
  DamageType          = LASER
  DeathType           = LASERED
  WeaponSpeed         = 999999.0     ; dist/sec 
  DelayBetweenShots   = 250         ; time between shots, msec
  ;DelayBetweenShots   = 1000         ; time between shots, msec
  ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0            ; how long to reload a Clip, msec
  AcceptableAimDelta  = 180          ; Don't need to turn at all.
  AntiSmallMissile    = Yes
  AntiProjectile      = No
  LaserName           = AirF_PointDefenseLaserBeam
  LaserBoneName       = WeaponA01
  FireFX              = WeaponFX_PaladinPointDefenseLaser
End

;------------------------------------------------------------------------------
; CHEMICAL GENERAL
;------------------------------------------------------------------------------
Weapon Chem_StingerMissileWeaponBeta
  PrimaryDamage = 70.0            
  PrimaryDamageRadius = 9.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 290.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 750               ; ignored for projectile weapons
  ProjectileObject = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
; ProjectileDetonationOCL = OCL_PoisonFieldUpgradedSmall
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith = STRUCTURES
End

Weapon Chem_StingerMissileWeaponAirBeta
  PrimaryDamage = 75.0            
  PrimaryDamageRadius = 20.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 400.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  AntiBallisticMissile = Yes
End

Weapon Chem_StingerMissileWeaponGamma
  PrimaryDamage = 80.0            
  PrimaryDamageRadius = 25.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 290.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 750               ; ignored for projectile weapons
  ProjectileObject = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaustGamma
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
; ProjectileDetonationOCL = OCL_PoisonFieldGammaSmall
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith = STRUCTURES
End

Weapon Chem_StingerMissileWeaponAirGamma
  PrimaryDamage = 85.0            
  PrimaryDamageRadius = 25.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 400.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC Chem_InfantryStingerMissileExhaustGamma
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  AntiBallisticMissile = Yes
End


;------------------------------------------------------------------------------
Weapon Chem_TunnelDefenderRocketWeaponBeta
  PrimaryDamage               = 80.0            
  PrimaryDamageRadius         = 8.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 195.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
; ProjectileDetonationOCL     = OCL_PoisonFieldUpgradedSmall
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

Weapon Chem_TunnelDefenderRocketWeaponGamma
  PrimaryDamage               = 85.0            
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 205.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
; ProjectileDetonationOCL = OCL_PoisonFieldGammaSmall
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle = No
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

Weapon Chem_TunnelDefenderRocketWeaponBetaAir
  PrimaryDamage               = 80.0            
  PrimaryDamageRadius         = 8.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 215.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

Weapon Chem_TunnelDefenderRocketWeaponGammaAir
  PrimaryDamage               = 85.0            
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 215.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = Chem_StingerMissile
  ProjectileExhaust           = Chem_InfantryStingerMissileExhaustGamma
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 0             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX = WeaponFX_AntiAircraftMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = No
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

;------------------------------------------------------------------------------
Weapon Chem_ScorpionMissileWeapon
  PrimaryDamage = 155.0            
  PrimaryDamageRadius = 9.0      
  SecondaryDamage = 90.0          
  SecondaryDamageRadius = 35.0    
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 210.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = ScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_RocketBuggyMissileDetonation
  ;ProjectileDetonationOCL     = OCL_PoisonFieldUpgradedSmall

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon Chem_ScorpionMissileWeaponGamma
  PrimaryDamage = 180.0            
  PrimaryDamageRadius = 12.0      
  SecondaryDamage = 95.0          
  SecondaryDamageRadius = 35.0    
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 220.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = ScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_RocketBuggyMissileDetonation
  ProjectileDetonationOCL     = OCL_PoisonFieldGammaSmall

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End


;------------------------------------------------------------------------------
Weapon Chem_ScorpionTankGunPlusOne
  PrimaryDamage = 75.0
  PrimaryDamageRadius = 8.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 180.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 5                            ; angle to deflect the model when firing
  ProjectileObject = ScorpionTankShell
  FireFX = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ;Commented out to show it has been moved to ScorpionTankGunFXWeapon, 
  ;because the art for the Toxin shell version incorporates the normal explosion.
;  ProjectileDetonationFX = WeaponFX_GenericTankShellDetonation
  FireSound = ScorpionTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec


  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
  ProjectileDetonationOCL     = OCL_PoisonFieldUpgradedSmall
End

;------------------------------------------------------------------------------
Weapon Chem_ScorpionMissileWeaponPlusTwo
  PrimaryDamage = 140.0            
  PrimaryDamageRadius = 9.0      
  SecondaryDamage = 95.0          
  SecondaryDamageRadius = 35.0    
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 230.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = ScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 2            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_RocketBuggyMissileDetonation

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
  ProjectileDetonationOCL     = OCL_PoisonFieldUpgradedSmall
End
;------------------------------------------------------------------------------
Weapon Chem_TunnelDefenderBikerRocketWeapon
  PrimaryDamage               = 80.0            
  PrimaryDamageRadius         = 9.0      
  ScatterRadiusVsInfantry     = 5.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 195.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = TunnelDefenderMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 2             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RocketBuggyWeapon;RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  AntiAirborneVehicle = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
; ProjectileDetonationOCL     = OCL_PoisonFieldUpgradedSmall
  AcceptableAimDelta    = 20.0
End

;------------------------------------------------------------------------------
Weapon Chem_TunnelDefenderBikerRocketWeaponGamma
  PrimaryDamage               = 90.0            
  PrimaryDamageRadius         = 9.0      
  ScatterRadiusVsInfantry     = 5.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 205.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = TunnelDefenderMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 2             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2100    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RocketBuggyWeapon;RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiAirborneVehicle = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
; ProjectileDetonationOCL     = OCL_PoisonFieldGammaSmall
  AcceptableAimDelta    = 20.0
End

;------------------------------------------------------------------------------
Weapon Chem_TechnicalRPGWeapon
  PrimaryDamage               = 65.0            
  PrimaryDamageRadius         = 8.0      
  ScatterRadiusVsInfantry     = 0.0              ; When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 180.0
  MinimumAttackRange          = 5.0               ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION         ; ignored for projectile weapons
  DeathType                   = EXPLODED
  ProjectileObject            = TechnicalRPGMissile
  ProjectileExhaust           = InfantryStingerMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicInfantryStingerMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0                 ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000              ; time between shots, msec
  ClipSize                    = 0                 ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 900                 ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = TunnelRocketWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ProjectileDetonationOCL     = OCL_PoisonFieldUpgradedSmall
End

;------------------------------------------------------------------------------
Weapon SupW_AuroraFuelBombWeapon
  PrimaryDamage           = 750.0            
  PrimaryDamageRadius     = 95.0      
  AttackRange             = 400.0       ; this needs to be pretty high, since the Aurora moves so fast
  AcceptableAimDelta      = 45          ; we don't really need to be aimed directly at the target.
  DamageType              = AURORA_BOMB
  DeathType               = EXPLODED
  WeaponSpeed             = 99999
  ProjectileObject        = SupW_AuroraFuelAirBomb

  FireFX                  = FX_AuroraBombLaunch
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  ClipSize                = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 8000              ; how long to reload a Clip, msec
  AutoReloadsClip         = RETURN_TO_BASE                 ; must return to base to reload this weapon
  ShowsAmmoPips           = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith  = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon SupW_FuelBombDetonationWeapon
  PrimaryDamage = 900.0            
  PrimaryDamageRadius = 150.0      
  AttackRange = 140.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  ShockWaveAmount   = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 40.0 ;100 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.33    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon SupW_PatriotMissileWeapon
  PrimaryDamage               = 40.0            
  PrimaryDamageRadius         = 8.0      
  ScatterRadiusVsInfantry     = 3.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 300.0
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1             ; locomotor specifies speed.
  ProjectileObject            = PatriotMissileEMP
  ProjectileExhaust           = TowMissileExhaust;MissileExhaust
  FireSound                   = PatriotBatteryWeapon
  FireFX                      = FX_BuggyMissileIgnition
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 100                   ; time between shots, msec
  ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
  AntiBallisticMissile        = No
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  RequestAssistRange          = 200    ; when I fire, my object will look around for things of
  ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
  ProjectileDetonationOCL = SupW_OCL_PatriotEMPEffectSpheroid
  ProjectileCollidesWith      = STRUCTURES
  MissileCallsOnDie           = Yes
End

;------------------------------------------------------------------------------
Weapon SupW_PatriotMissileWeaponAir
  PrimaryDamage               = 50.0            
  PrimaryDamageRadius         = 9.0      
  ScatterRadiusVsInfantry     = 7.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 430.0
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 400
  ProjectileObject            = PatriotMissileEMP
  ProjectileExhaust           = TowMissileExhaust;MissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = PatriotBatteryWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 100                   ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = No
  AntiBallisticMissile        = Yes
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
  RequestAssistRange          = 200    ; when I fire, my object will look around for things of
  ; his type and tell their AssistedTargetingModules to fire a clip if they are free to do so.
  ProjectileDetonationOCL = SupW_OCL_PatriotEMPEffectSpheroid
  ProjectileCollidesWith      = STRUCTURES
  MissileCallsOnDie           = Yes
End

;------------------------------------------------------------------------------
; For use with the Assisted Targeting Update.  No Assist Listing and longer range
Weapon SupW_PatriotMissileAssistWeapon
  PrimaryDamage               = 55.0            
  PrimaryDamageRadius         = 9.0      
  ScatterRadiusVsInfantry     = 12.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 485.0 ; at least Regular's range + regular's request assist range
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = PatriotMissileEMP
  ProjectileExhaust           = TowMissileExhaust;MissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = PatriotBatteryWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 250                   ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1000               ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_RocketBuggyMissileDetonation
  ProjectileDetonationOCL     = SupW_OCL_PatriotEMPEffectSpheroid
  ProjectileCollidesWith      = STRUCTURES
End

Weapon SupW_EMPBlast
  PrimaryDamage               = 1.0            
  PrimaryDamageRadius         = 4.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 470.0 ; at least Regular's range + regular's request assist range
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1               ; ignored for projectile weapons
  ProjectileObject            = PatriotMissileEMPHelper
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ClipSize                    = 1
End

;------------------------------------------------------------------------------
Weapon Nuke_NukeMissileWeapon 
  PrimaryDamage               = 440.0           
  PrimaryDamageRadius         = 140.0 
  SecondaryDamage             = 90.0          
  SecondaryDamageRadius       = 80.0         
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  AttackRange                 = 310.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR   
  AcceptableAimDelta          = 30 
  DelayBetweenShots           = 300             ; time between shots, msec
  ClipSize                    = 2                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = Nuke_WeaponFX_NukeCannon
  ProjectileDetonationOCL     = OCL_RadiationFieldMedium
  DamageDealtAtSelfPosition   = Yes
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  ShowsAmmoPips               = Yes
  ShockWaveAmount             = 50.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius             = 50.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff           = 0.40    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.

End

;------------------------------------------------------------------------------
Weapon AirF_AuroraBombWeapon
  ;PrimaryDamage           = 290.0            
  ;PrimaryDamageRadius     = 80.0      
  PrimaryDamage           = 6.0            
  PrimaryDamageRadius     = 8.0      
  AttackRange             = 330.0       ; this needs to be pretty high, since the Aurora moves so fast
  AcceptableAimDelta      = 45          ; we don't really need to be aimed directly at the target.
  DamageType              = AURORA_BOMB
  DeathType               = EXPLODED
  WeaponSpeed             = 99999
  ProjectileObject        = AirF_AuroraBomb
  FireFX                  = FX_AuroraBombLaunch
;  ProjectileDetonationFX  = FX_AuroraBombDetonate
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  ClipSize                = 2                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 5000              ; how long to reload a Clip, msec
  AutoReloadsClip         = RETURN_TO_BASE                 ; must return to base to reload this weapon
  ShowsAmmoPips           = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith  = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon AirF_RaptorPointDefenseLaser
  PrimaryDamage       = 190.0
  PrimaryDamageRadius = 5.0
  AttackRange         = 95.0 
  DamageType          = LASER
  DeathType           = LASERED
  WeaponSpeed         = 999999.0     ; dist/sec 
  DelayBetweenShots   = 250         ; time between shots, msec
  ;DelayBetweenShots   = 1000         ; time between shots, msec
  ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0            ; how long to reload a Clip, msec
  AcceptableAimDelta  = 180          ; Don't need to turn at all.
  AntiSmallMissile    = Yes
  AntiProjectile      = No
  LaserName           = AvengerPointDefenseLaserBeam
  LaserBoneName       = WeaponA01
  FireFX              = WeaponFX_PaladinPointDefenseLaser
End





Weapon AirF_RaptorJetMissileWeapon
  PrimaryDamage               = 155.0            
  PrimaryDamageRadius         = 7.0
  ScatterRadiusVsInfantry     = 8.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 395.0
  MinimumAttackRange          = 110.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust ;AirF_RaptorMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 100 ;150
  ClipSize                    = 8 
  ClipReloadTime              = 2000
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End


;------------------------------------------------------------------------------
Weapon AirF_RaptorJetLaserGuidedMissileWeapon
  PrimaryDamage               = 175.0            
  PrimaryDamageRadius         = 9.0
  ScatterRadiusVsInfantry     = 5.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 400.0
  MinimumAttackRange          = 90.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust ;AirF_RaptorMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 100 ;150
  ClipSize                    = 8 
  ClipReloadTime              = 2000
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon AirF_AuroraBombDetonationWeapon
  PrimaryDamage = 1200.0            
  PrimaryDamageRadius = 140.0      
  AttackRange = 150.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  ShockWaveAmount   = 150.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 100.0 ;100 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.33    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End

;------------------------------------------------------------------------------
Weapon Demo_ScudStormDamageWeapon
  PrimaryDamage = 950.0
  PrimaryDamageRadius = 95.0
  SecondaryDamage = 150.0
  SecondaryDamageRadius = 200.0 
  AttackRange = 220.0
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 700         ; dist/sec 
  FireFX = Demo_ScudStormMissileDetonation
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  ;NOTE: Removed the meta-physics for these missiles because it was causing some missles to stop and rotate in place.  
  ;I don't know how to fix this. - Comes 6/03
;  ShockWaveAmount   = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
;  ShockWaveRadius     = 75.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
;  ShockWaveTaperOff  = 0.50    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End



;------------------------------------------------------------------------------
Weapon Demo_ScudStormWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 999999            ; not used for this weapon (it's "special")
  DamageType = EXPLOSION          ; not used for this weapon (it's "special")
  DeathType = EXPLODED
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = Demo_ScudStormMissile
  ProjectileExhaust = ScudMissileExhaust
  FireFX = WeaponFX_ScudStormMissile
  FireSound = ScudStormLaunch
  ProjectileDetonationFX = ScudStormMissileDetonation
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = Min:100 Max:1000
  ClipSize = 9
  ClipReloadTime = 10000 ; give it time to sink into the ground          
  AutoReloadsClip = Yes
  ScatterRadius   = 0;changed to zero, unless you want to soften the results of the table below

  ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
  ; These specific points are an even distribution simulating a 150 ScatterRadius.
  ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
  ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.

  ScatterTargetScalar = 120; replaces the ScatterRadius, above, for scaling this table, below
  ScatterTarget = X: 0.000 Y: 0.133
  ScatterTarget = X: 0.133 Y:-0.200
  ScatterTarget = X:-0.067 Y: 0.667
  ScatterTarget = X: 0.300 Y: 0.300
  ScatterTarget = X: 0.767 Y: 0.000       
  ScatterTarget = X: 0.500 Y:-0.567        
  ScatterTarget = X:-0.333 Y:-0.800        
  ScatterTarget = X:-0.600 Y:-0.1333        
  ScatterTarget = X:-0.567 Y: 0.433        

  PreAttackDelay = 3000 ; Give the missiles time to get up, since we can't watch the animation. (If too short, missiles will pop up)
  PreAttackType = PER_CLIP ; Do the delay the first shot of each clip
  AcceptableAimDelta = 180 ; Don't need to turn at all.
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon Nuke_SmallRadiationFieldWeapon
  PrimaryDamage = 15.0            
  PrimaryDamageRadius = 35.0      
  AttackRange = 15.0
  MinimumAttackRange = 0.0
  DamageType = RADIATION
  DeathType = NORMAL
  WeaponSpeed = 600                     ;  dist/sec 

  FireFX = WeaponFX_SmallRadiationFieldWeapon ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too

  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS NOT_AIRBORNE
  DelayBetweenShots = 750                ; time between shots, msec
End

Weapon Nuke_ChinaCarpetBombWeapon
  PrimaryDamage = 500.0            
  PrimaryDamageRadius = 75.0      
  AttackRange = 100.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  FireOCL          = OCL_RadiationFieldMedium
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS  NOT_SIMILAR  
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  ShockWaveAmount   = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 75.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.50    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End

;------------------------------------------------------------------------------
Weapon Nuke_BattleMasterTankGun
  PrimaryDamage           = 130.0
  PrimaryDamageRadius     = 12.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 195.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 500                           ; dist/sec 
  WeaponRecoil            = 6                            ; angle to deflect the model when firing
  ProjectileObject        = Nuke_BattleMasterTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ProjectileDetonationFX  = WeaponFX_NewTankShellDetonation;WeaponFX_GenericTankShellDetonation
  FireSound               = BattlemasterTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 2000               ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0              ; how long to reload a Clip, msec
  WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------

Weapon Nuke_NukeShellWeapon
  PrimaryDamage = 0.0
  PrimaryDamageRadius = 1.0      
  AttackRange = 100.0
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  ProjectileObject = NONE
  ;FireFX = WeaponFX_NapalmMissileDetonation
  FireOCL = Nuke_OCL_RadiationFieldSmall
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
End


;------------------------------------------------------------------------------
Weapon Nuke_NuclearTankDeathWeapon
  PrimaryDamage               = 100.0 ;was 25 
  PrimaryDamageRadius         = 80.0 ;was 25     
  SecondaryDamage             = 70.0 ;was 10         
  SecondaryDamageRadius       = 100.0 ;was 75   
  AttackRange                 = 100.0
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  WeaponSpeed                 = 99999.0
  ProjectileObject            = NONE
  FireFX                      = Nuke_WeaponFX_NapalmMissileDetonation
  FireOCL                     = OCL_RadiationFieldSmall
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 0                   ; time between shots, msec
  ClipSize                    = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip             = No 
  AntiGround                  = Yes
  DamageDealtAtSelfPosition   = Yes
  ShockWaveAmount   = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 75.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.50    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End

;------------------------------------------------------------------------------
Weapon Nuke_OverlordTankGun
  PrimaryDamage = 155 ;165.0
  PrimaryDamageRadius = 20.0
  ScatterRadiusVsInfantry = 8.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage = 50.0
  SecondaryDamageRadius = 30.0
  AttackRange = 255.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 6                            ; angle to deflect the model when firing
  ProjectileObject = Nuke_OverlordTankShell
  FireFX            = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX   = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = FX_FireBaseHowitzerExplosion;WeaponFX_GenericTankShellDetonation
  FireSound = OverlordTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 300              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;;------------------------------------------------------------------------------
Weapon SupW_PointDefenseDroneLaserWeapon
  PrimaryDamage       = 100.0
  PrimaryDamageRadius = 0.0
  AttackRange         = 65.0 
  DamageType          = LASER
  DeathType           = LASERED
  WeaponSpeed         = 999999.0     ; dist/sec 
  DelayBetweenShots   = 200         ; time between shots, msec
  ClipSize            = 0            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime      = 0            ; how long to reload a Clip, msec
  AcceptableAimDelta  = 180          ; Don't need to turn at all.
  AntiSmallMissile    = Yes
  AntiProjectile      = No
  LaserName           = SupW_PointDefenseDroneLaserBeam
  LaserBoneName       = MUZZLE01
  FireFX              = WeaponFX_PaladinPointDefenseLaser
End

;------------------------------------------------------------------------------
Weapon SupW_DefenseEmitterWeapon
  PrimaryDamage = 15.0            
  PrimaryDamageRadius = 50.0      
  AttackRange = 15.0
  MinimumAttackRange = 10.0
  DamageType = RADIATION
  DeathType = NORMAL
  WeaponSpeed = 1000                     ;  dist/sec 

  ;FireFX = SupW_FX_DefenseEmitter ; This FxList is marked UseCallersRadius,
  ; so the damage range can be tweaked and it will change the effect's radius too
  ;As it has been decided not to use this effect SteveM has commented it out.

  RadiusDamageAffects = ENEMIES NEUTRALS
  DelayBetweenShots = 750                ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon Chem_ScudStormWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 999999            ; not used for this weapon (it's "special")
  DamageType = EXPLOSION          ; not used for this weapon (it's "special")
  DeathType = EXPLODED
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = Chem_ScudStormMissile
  ProjectileExhaust = ScudMissileExhaust
  FireFX = WeaponFX_ScudStormMissile
  FireSound = ScudStormLaunch
  ProjectileDetonationFX = ScudStormMissileDetonation
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = Min:100 Max:1000
  ClipSize = 9
  ClipReloadTime = 10000 ; give it time to sink into the ground          
  AutoReloadsClip = Yes
  ScatterRadius   = 0;changed to zero, unless you want to soften the results of the table below

  ; Instead of a purely random scatter distance, this will divide a clip evenly and randomly at these spots
  ; These specific points are an even distribution simulating a 150 ScatterRadius.
  ; With fewer entries than ClipSize, the extra will hit 0,0 as normal shots
  ; With extra entries, 9 of 12 could be used eg, and then you'd get a different nine next clip.

  ScatterTargetScalar = 120; replaces the ScatterRadius, above, for scaling this table, below
  ScatterTarget = X: 0.000 Y: 0.133
  ScatterTarget = X: 0.133 Y:-0.200
  ScatterTarget = X:-0.067 Y: 0.667
  ScatterTarget = X: 0.300 Y: 0.300
  ScatterTarget = X: 0.767 Y: 0.000       
  ScatterTarget = X: 0.500 Y:-0.567        
  ScatterTarget = X:-0.333 Y:-0.800        
  ScatterTarget = X:-0.600 Y:-0.1333        
  ScatterTarget = X:-0.567 Y: 0.433        

  PreAttackDelay = 3000 ; Give the missiles time to get up, since we can't watch the animation. (If too short, missiles will pop up)
  PreAttackType = PER_CLIP ; Do the delay the first shot of each clip
  AcceptableAimDelta = 180 ; Don't need to turn at all.

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End


;------------------------------------------------------------------------------
Weapon Chem_SuicideWeaponGamma ; No extra damage, just lays down a damage field
  PrimaryDamage = 200.0            
  PrimaryDamageRadius = 10.0      
  AttackRange = 100.0
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  ProjectileObject = NONE
;  FireFX = WeaponFX_NapalmMissileDetonation
  FireOCL = OCL_PoisonFieldGammaSmall
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
End

;------------------------------------------------------------------------------
Weapon Chem_SuicideWeapon ; No extra damage, just lays down a damage field
  PrimaryDamage = 200.0
  PrimaryDamageRadius = 10.0      
  AttackRange = 100.0
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  ProjectileObject = NONE
  FireFX = WeaponFX_ToxinShellWeapon
  FireOCL = OCL_PoisonFieldSmall
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
End

;------------------------------------------------------------------------------
Weapon Chem_SuicideWeaponBeta ; No extra damage, just lays down a damage field
  PrimaryDamage = 200.0            
  PrimaryDamageRadius = 10.0      
  AttackRange = 100.0
  DamageType = EXPLOSION 
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  ProjectileObject = NONE
;  FireFX = WeaponFX_NapalmMissileDetonation
  FireOCL = OCL_PoisonFieldUpgradedSmall
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  AntiGround = Yes
  DamageDealtAtSelfPosition = Yes
End

;------------------------------------------------------------------------------
Weapon Chem_DemoTrapDetonationWeaponBeta
  PrimaryDamage = 250.0            
  PrimaryDamageRadius = 35.0      
  SecondaryDamage = 110.0          
  SecondaryDamageRadius = 60.0    
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  FireFX = WeaponFX_DemoTrapDetonation
  FireOCL = OCL_PoisonFieldUpgradedMedium
; FireOCL = OCL_PoisonFieldGammaMedium
  PlayFXWhenStealthed = Yes
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon Chem_DemoTrapDetonationWeaponGamma
  PrimaryDamage = 250.0            
  PrimaryDamageRadius = 45.0      
  SecondaryDamage = 120.0          
  SecondaryDamageRadius = 70.0    
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  FireFX = WeaponFX_DemoTrapDetonation
; FireOCL = OCL_PoisonFieldUpgradedMedium
  FireOCL = OCL_PoisonFieldGammaMedium
  PlayFXWhenStealthed = Yes
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End


;------------------------------------------------------------------------------
Weapon BunkerBusterAntiTunnelGarrisonWeaponWithABigName
  PrimaryDamage = 1000.0            
  PrimaryDamageRadius = 24.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  DamageType = PARTICLE_BEAM
  DeathType = EXPLODED
  WeaponSpeed = 99999.0
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
End

;------------------------------------------------------------------------------
Weapon HelixNukeBombDetonationWeaponWithAnEvenLongerName
  PrimaryDamage               = 400.0  
  PrimaryDamageRadius         = 50.0      
  SecondaryDamage             = 30.0          
  SecondaryDamageRadius       = 40.0    
  AttackRange                 = 100.0
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  WeaponSpeed                 = 99999.0
  ProjectileObject            = NONE
  FireFX                      = Nuke_WeaponFX_NukeCannon
  FireOCL                     = OCL_RadiationFieldMedium 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 0                   ; time between shots, msec
  ClipSize                    = 1                            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 0                      ; how long to reload a Clip, msec
  AutoReloadsClip             = No 
  AntiGround                  = Yes
  DamageDealtAtSelfPosition   = Yes
  ShockWaveAmount             = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius             = 75.0 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff           = 0.50    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End

;------------------------------------------------------------------------------
Weapon Nuke_MiGMissileWeapon 
  PrimaryDamage               = 240.0            
  PrimaryDamageRadius         = 9.0      
  SecondaryDamage             = 50.0          
  SecondaryDamageRadius       = 40.0  
  DamageType                  = JET_MISSILES ; since creates FireField to do the flame damage
  DeathType                   = EXPLODED
  AttackRange                 = 320.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30
  DelayBetweenShots           = 300             ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  ProjectileDetonationOCL     = OCL_RadiationFieldSmall
  DamageDealtAtSelfPosition   = Yes
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End
;---------------------------------------------------------------------------------
Weapon BuggyRocketREDWeapon
  PrimaryDamage               = 50.0            
  PrimaryDamageRadius         = 6.0      
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage             = 12.0          
  SecondaryDamageRadius       = 10.0    
  AttackRange                 = 335.0
  MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileDetonationFX      = WeaponFX_DEMOGENRocketBuggyMissileDetonation
  ProjectileObject            = RocketBuggyMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 200  ; time between shots, msec
  ClipSize                    = 8            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 6000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  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)
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = RocketBuggyWeapon 
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith      = STRUCTURES
  MissileCallsOnDie           = Yes
End
;------------------------------------------------------------------------------
Weapon REDMarauderTankGun
  PrimaryDamage = 85.0
  PrimaryDamageRadius = 9.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 180.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 300                           ; dist/sec 
  WeaponRecoil = 9                            
  ProjectileObject = MarauderTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_DEMOGenericTankShellDetonation
  FireSound = MarauderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 

End

;------------------------------------------------------------------------------
Weapon REDMarauderTankGunUpgradeOne
  PrimaryDamage = 95.0
  PrimaryDamageRadius = 10.0
  AttackRange = 200.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 11                            ; angle to deflect the model when firing
  ProjectileObject = MarauderTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_DEMOGenericTankShellDetonation
  FireSound = MarauderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1500        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon REDMarauderTankGunUpgradeTwo
  PrimaryDamage = 100.0
  PrimaryDamageRadius = 14.0
  ScatterRadiusVsInfantry = 7.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 220.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 500                           ; dist/sec 
  WeaponRecoil = 13                            ; angle to deflect the model when firing
  ProjectileObject = MarauderTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_DEMOGenericTankShellDetonation
  FireSound = MarauderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 750           ; time between shots, msec
  ClipSize = 2                      ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 100              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon REDScorpionMissileWeapon
  PrimaryDamage = 230.0            
  PrimaryDamageRadius = 8.0      
  SecondaryDamage = 90.0          
  SecondaryDamageRadius = 35.0    
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 210.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = ScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_DEMOGENRocketBuggyMissileDetonation

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End
;------------------------------------------------------------------------------
Weapon REDScorpionMissileWeaponPlusTwo
  PrimaryDamage = 250.0            
  PrimaryDamageRadius = 10.0      
  SecondaryDamage = 100.0          
  SecondaryDamageRadius = 45.0    
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 210.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = ScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 2            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_DEMOGENRocketBuggyMissileDetonation

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End


Weapon DEMO_SCUDLauncherGunExplosive
  PrimaryDamage               = 300.0            
  PrimaryDamageRadius         = 50.0      
  SecondaryDamage             = 50.0          
  SecondaryDamageRadius       = 100.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 625.0
  MinimumAttackRange          = 200.0
  PreAttackDelay              = 500
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_ScudLauncherIgnition
  ProjectileObject            = SCUDMissile
  ProjectileExhaust           = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX      = WeaponFX_DEMO_SCUDMissileDetonationExplosive
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound                   = ScudLauncherWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000            ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
End

;------------------------------------------------------------------------------
Weapon DEMO_SCUDLauncherGunExplosivePlusOne
  PrimaryDamage               = 350.0            
  PrimaryDamageRadius         = 50.0      
  SecondaryDamage             = 50.0          
  SecondaryDamageRadius       = 100.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 650.0
  MinimumAttackRange          = 200.0
  PreAttackDelay              = 500
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_ScudLauncherIgnition
  ProjectileObject            = SCUDMissilePlusOne
  ProjectileExhaust           = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX      = WeaponFX_DEMO_SCUDMissileDetonationExplosive
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound                   = ScudLauncherWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000            ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
End

;------------------------------------------------------------------------------
Weapon DEMO_SCUDLauncherGunExplosivePlusTwo
  PrimaryDamage               = 400.0            
  PrimaryDamageRadius         = 50.0      
  SecondaryDamage             = 75.0          
  SecondaryDamageRadius       = 100.0    
  ScatterRadiusVsInfantry     = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 675.0
  MinimumAttackRange          = 200.0
  PreAttackDelay              = 500
  PreAttackType               = PER_SHOT ; Do the delay every single shot
  DamageType                  = EXPLOSION 
  DeathType                   = EXPLODED
  FireFX                      = FX_ScudLauncherIgnition
  ProjectileObject            = SCUDMissilePlusTwo
  ProjectileExhaust           = ScudMissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicScudMissileExhaust
  ProjectileDetonationFX      = WeaponFX_DEMO_SCUDMissileDetonationExplosive
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  FireSound                   = ScudLauncherWeapon
  DelayBetweenShots           = 1
  ClipSize                    = 1                ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000            ; how long to reload a Clip, msec
  ; Uses a clip of one to get the Reloading modelcondition

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES

  WeaponBonus = PLAYER_UPGRADE DAMAGE 125%  ; AP rockets upgrade for SCUD launcher
End

;-----------------------------------------------------------------------------------

Weapon DEMO_TunnelDefenderBikerRocketWeapon
  PrimaryDamage               = 85.5            
  PrimaryDamageRadius         = 9.5      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 185.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = TunnelDefenderMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 500  ; time between shots, msec
  ClipSize                    = 2             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_DEMORocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiAirborneVehicle = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  AcceptableAimDelta    = 20.0
End

Weapon DemoTunnelDefenderRocketWeapon
  PrimaryDamage               = 85.5            
  PrimaryDamageRadius         = 9.5      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 195.0
  MinimumAttackRange          = 5.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = INFANTRY_MISSILE  ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = TunnelDefenderMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 1000  ; time between shots, msec
  ClipSize                    = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  FireSound                   = RPGTrooperWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_DEMOGENRocketBuggyMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiAirborneVehicle = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
End

;------------------------------------------------------------------------------
Weapon DemoScorpionTankGunFXWeapon
  PrimaryDamage = 5.0
  PrimaryDamageRadius = 10.0
  AttackRange = 125.0
  FireFX = WeaponFX_DEMOGenericTankShellDetonation
End

;------------------------------------------------------------------------------
Weapon VulcanCannonA10
  PrimaryDamage         = 65.0
  PrimaryDamageRadius   = 4.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 505.0
  MinimumAttackRange    = 90.0
  DamageType            = COMANCHE_VULCAN
  DeathType             = NORMAL
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                = WeaponFX_Comanche20mmCannonFire
  FireSound             = GattlingCannonWeapon ;SpectreGunshipGattlingWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 5          ; time between shots, msec
  ClipSize              = 50                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 5000              ; how long to reload a Clip, msec
  AutoReloadsClip       = RETURN_TO_BASE 
End

;------------------------------------------------------------------------------
Weapon SatelitteStrikeDamageWeapon
  PrimaryDamage         = 250.0     ;GS changed to what it was secretly doing pending review
  PrimaryDamageRadius   = 80.0      
  AttackRange           = 150.0
  DamageType            = EXPLOSION         
  DeathType             = EXPLODED
  WeaponSpeed           = 99999.0             
  RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots     = 0    ; time between shots, msec
  ProjectileDetonationOCL = SupW_OCL_PatriotEMPEffectSpheroid
  ClipSize              = 1    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0    ; how long to reload a Clip, msec
  AutoReloadsClip       = No 
End

;------------------------------------------------------------------------------
Weapon AssaultRifle
  PrimaryDamage           = 10.0
  PrimaryDamageRadius     = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 180.0
  DamageType              = SMALL_ARMS
  DeathType               = NORMAL
  WeaponSpeed             = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject        = GenericMachineGunProjectile
  ;ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts
  FireFX                  = WeaponFX_GenericMachineGunFire
  VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound               = ComancheWeaponMachineGun;SentryDroneWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 150              ; time between shots, msec
  ClipSize                = 20                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 1000              ; how long to reload a Clip, msec
  WeaponBonus             = DRONE_SPOTTING RATE_OF_FIRE 200%
  WeaponBonus             = DRONE_SPOTTING RANGE        200%
  WeaponBonus             = DRONE_SPOTTING DAMAGE       200%
End

;------------------------------------------------------------------------------
Weapon Shotgun
  PrimaryDamage           = 80.0
  PrimaryDamageRadius     = 10.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 125.0
  DamageType              = Gattling
  DeathType               = NORMAL
  WeaponSpeed             = 2000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject        = GenericMachineGunProjectile
  ;ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts
  FireFX                  = WeaponFX_GenericMachineGunFire
  VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound               = StrategyCenter_ArtilleryRound;ShotgunWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 500              ; time between shots, msec
  ClipSize                = 8                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 2500              ; how long to reload a Clip, msec
  WeaponBonus             = DRONE_SPOTTING RATE_OF_FIRE 200%
  WeaponBonus             = DRONE_SPOTTING RANGE        200%
  WeaponBonus             = DRONE_SPOTTING DAMAGE       200%
End

;------------------------------------------------------------------------------
Weapon SUNapalmBomb
  PrimaryDamage               = 250.0            
  PrimaryDamageRadius         = 60.0      
  SecondaryDamage             = 50.0          
  SecondaryDamageRadius       = 50.0  
  ScatterRadius               = 15.0  
  DamageType                  = EXPLOSION ; since creates FireField to do the flame damage
  DeathType                   = EXPLODED
  AttackRange                 = 225.0
  MinimumAttackRange          = 0.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = SUNapalmBomb
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30
  DelayBetweenShots           = 200             ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  FireFX                      = FX_AuroraBombLaunch
  ProjectileDetonationFX      = FX_AuroraBombDetonate
  ProjectileDetonationOCL     = OCL_FireFieldSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 4
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = FirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon SUNapalmBombUpgraded
  PrimaryDamage               = 290.0            
  PrimaryDamageRadius         = 80.0      
  SecondaryDamage             = 60.0          
  SecondaryDamageRadius       = 55.0  
  ScatterRadius               = 15.0  
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  AttackRange                 = 225.0
  MinimumAttackRange          = 0.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = SUNapalmBomb
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30 
  DelayBetweenShots           = 200             ; time between shots, msec
  ClipSize                    = 4                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 10000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  FireFX                      = FX_AuroraBombLaunch
  ProjectileDetonationFX      = FX_AuroraBombDetonate
  ProjectileDetonationOCL     = OCL_FireFieldUpgradedSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 4
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = BlackNapalmFirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon CarpetBomb2
  PrimaryDamage = 100.0            
  PrimaryDamageRadius = 55.0      
  SecondaryDamage = 45.0          
  SecondaryDamageRadius = 55.0   
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  DamageDealtAtSelfPosition = Yes   ; this is a suicide bomber... remember?
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon TomahawkBarrageDamageWeapon
  PrimaryDamage         = 525.0     ;GS changed to what it was secretly doing pending review
  PrimaryDamageRadius   = 60.0      
  AttackRange           = 160.0
  DamageType            = EXPLOSION         
  DeathType             = EXPLODED
  WeaponSpeed           = 99999.0             
  ProjectileDetonationFX = WeaponFX_BombTruckDefaultBombDetonation
  ProjectileExhaust     = TomahawkMissileExhaust
  RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots     = 0    ; time between shots, msec
  ClipSize              = 1    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0    ; how long to reload a Clip, msec
  AutoReloadsClip       = No 
End

;------------------------------------------------------------------------------
Weapon RebelGrenade
  PrimaryDamage = 50.0           
  PrimaryDamageRadius = 11.0       
  AttackRange = 140.0 
  MinimumAttackRange = 12; 40.0
  DamageType = EXPLOSION ;used only by this weapon.  Splits off so Dragon Tanks and Toxin Trucks are resistant.  
  DeathType = BURNED
  WeaponSpeed = 150 ;          
  ProjectileObject = MolotovCocktail
  ;FireFX = WeaponFX_GenericMachineGunFire
  FireSound = RangerFlashBangWeapon
  RadiusDamageAffects = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots = 500 ;3000        ; time between shots, msec
  ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2500              ; how long to reload a Clip, msec
  ProjectileDetonationFX = WeaponFX_MolotovCocktailDetonation
  MaxTargetPitch = 15 ; this is important so that they do not lob the bottles on their mobmates
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon ChinaInfantryTankHunterMissileLauncherNuke
  PrimaryDamage = 90.0            
  PrimaryDamageRadius = 10.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 205.0
  MinimumAttackRange = 5.0  ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType = INFANTRY_MISSILE   ;ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = TankHunterMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  ProjectileDetonationOCL = OCL_RadiationFieldSmall
  ScatterRadius = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots = 1000  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 950    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireSound = TankHunterWeapon
  FireFX = FX_BuggyMissileIgnition
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation

  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon NukeStrike
  PrimaryDamage = 3200.0            
  PrimaryDamageRadius = 190.0      
  SecondaryDamage = 1200.0          
  SecondaryDamageRadius = 280.0   
  DamageType = EXPLOSION
  DeathType = EXPLODED
  ProjectileDetonationFX = FX_NukeGLA;WeaponFX_NukeCannon
  ProjectileDetonationOCL = OCL_RadiationFieldLarge
  ProjectileExhaust = TomahawkMissileExhaust
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0              
  ClipSize = 1                        
  ClipReloadTime = 0                  
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon BlackMarketNukeWeapon
  PrimaryDamage = 2700.0            
  PrimaryDamageRadius = 170.0      
  AttackRange = 160.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  FireOCL = OCL_RadiationFieldLarge
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
End

;------------------------------------------------------------------------------
Weapon SpecialNapalmMissileWeapon
  PrimaryDamage               = 150.0            
  PrimaryDamageRadius         = 9.0      
  SecondaryDamage             = 40.0          
  SecondaryDamageRadius       = 30.0  
  DamageType                  = JET_MISSILES ; since creates FireField to do the flame damage
  DeathType                   = EXPLODED
  AttackRange                 = 350.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30
  DelayBetweenShots           = 300             ; time between shots, msec
  ClipSize                    = 3                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_NapalmMissileDetonation
  ProjectileDetonationOCL     = OCL_FireFieldSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 3
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = FirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End
 
;------------------------------------------------------------------------------
Weapon SpecialBlackNapalmMissileWeapon
  PrimaryDamage               = 200.0            
  PrimaryDamageRadius         = 10.0      
  SecondaryDamage             = 55.0          
  SecondaryDamageRadius       = 40.0  
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  AttackRange                 = 350.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30 
  DelayBetweenShots           = 300             ; time between shots, msec
  ClipSize                    = 3                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_BlackNapalmExplosion
  ProjectileDetonationOCL     = OCL_FireFieldUpgradedSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 3
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = BlackNapalmFirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon MarineC4ChargeWeapon
  LeechRangeWeapon = Yes
  PrimaryDamage = 950.0            
  PrimaryDamageRadius = 45.0      
  SecondaryDamage = 145.0          
  SecondaryDamageRadius = 55.0    
  AttackRange = 5.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  FireSound = RemoteDemoChargeExplosion
End

;------------------------------------------------------------------------------
Weapon RedguardMachineGunUpgraded
  PrimaryDamage         = 55.0
  PrimaryDamageRadius   = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 185.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound             = RedGuardWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 350
  ClipSize              = 16                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 2500              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon GattlingBuildingGunUpgraded
  PrimaryDamage         = 25.0 ;9.0
  PrimaryDamageRadius   = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 290.0
  DamageType            = Gattling
  DeathType             = BURNED
  WeaponSpeed           = 5000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GattlingCannonMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
  FireSound             = GattlingCannonWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 150               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  ContinuousFireOne     = 4 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 8 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle   = No
  AntiAirborneInfantry  = No
  AntiSmallMissile      = No
  AntiBallisticMissile  = No
  AntiGround            = Yes
End

;------------------------------------------------------------------------------
Weapon RangerFlashBangGrenadeWeapon
  PrimaryDamage           = 70.0
  PrimaryDamageRadius     = 13.0
  SecondaryDamage         = 20.0
  SecondaryDamageRadius   = 50.0
  AttackRange             = 155.0 
  MinimumAttackRange      = 20.0
  DamageType              = SURRENDER
  DeathType               = NORMAL 
  WeaponSpeed             = 250 
  ProjectileObject        = RangerFlashBangGrenade
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  FireSound               = RangerFlashBangWeapon
  ScatterRadius           = 4          ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots       = 0     ; time between shots, msec
  ClipSize                = 1              ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 2000     ; how long to reload a Clip, msec
  AutoReloadsClip         = Yes 
  ProjectileDetonationFX  = WeaponFX_RangerFlashBangGrenadeDetonation
  ProjectileCollidesWith  = STRUCTURES WALLS
  AllowAttackGarrisonedBldgs  = Yes
End

;------------------------------------------------------------------------------
Weapon RangerGrenadeWeapon
  PrimaryDamage           = 90.0
  PrimaryDamageRadius     = 15.0
  SecondaryDamage         = 50.0
  SecondaryDamageRadius   = 50.0
  AttackRange             = 155.0 
  MinimumAttackRange      = 20.0
  DamageType              = EXPLOSION
  DeathType               = EXPLODED
  WeaponSpeed             = 200 
  ProjectileObject        = RangerGrenade
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  FireSound               = RangerFlashBangWeapon
  ScatterRadius           = 8          ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots       = 0     ; time between shots, msec
  ClipSize                = 1              ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 2000     ; how long to reload a Clip, msec
  AutoReloadsClip         = Yes 
  ProjectileDetonationFX  = WeaponFX_GenericTankShellDetonation
  ProjectileCollidesWith  = STRUCTURES WALLS
End

;------------------------------------------------------------------------------
Weapon BuggyRocketSAMWeapon
  PrimaryDamage               = 70.0            
  PrimaryDamageRadius         = 3.0      
  ScatterRadiusVsInfantry     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage             = 9.0          
  SecondaryDamageRadius       = 10.0    
  AttackRange                 = 525.0
  MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 700               ; ignored for projectile weapons
  ProjectileObject            = RocketBuggyMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 0      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 300  ; time between shots, msec
  ClipSize                    = 6            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 6000    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  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)
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = StealthJetMissileWeapon
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith      = STRUCTURES
  ;MissileCallsOnDie           = Yes
  AntiGround                  = No
  AntiAirborneVehicle         = Yes
End

;------------------------------------------------------------------------------
Weapon ViralOutbreakWeapon
  PrimaryDamage         = 270.0     ;GS changed to what it was secretly doing pending review
  PrimaryDamageRadius   = 425.0      
  AttackRange           = 180.0
  DamageType            = KILL_PILOT        
  DeathType             = POISONED_GAMMA
  WeaponSpeed           = 99999.0             
  ProjectileExhaust     = TomahawkMissileExhaust
  ProjectileDetonationFX = FX_GLAViralOutbreak
  ProjectileDetonationOCL = OCL_PoisonFieldGammaLarge
  RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots     = 0    ; time between shots, msec
  ClipSize              = 1    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0    ; how long to reload a Clip, msec
  AutoReloadsClip       = No 
End

;------------------------------------------------------------------------------
Weapon SupW_NeutronMissileWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 99999             ; not used for this weapon (it's "special")
  DamageType = RADIATION          ; not used for this weapon (it's "special")
  DeathType = NORMAL
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = ICBM ;SupW_NeutronMissile
  ProjectileExhaust = NeutronMissileExhaust
  FireFX = WeaponFX_NeutronMissile
  ProjectileDetonationFX = None   ; not used for this weapon (it's "special")
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0           ; not used for this weapon (it's "special")
  ClipSize = 1                    ; not used for this weapon (it's "special")
  ClipReloadTime = 0              ; not used for this weapon (it's "special")
  AutoReloadsClip = No            ; not used for this weapon (it's "special")
End

;------------------------------------------------------------------------------
Weapon ICBMMissileWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 99999             ; not used for this weapon (it's "special")
  DamageType = RADIATION          ; not used for this weapon (it's "special")
  DeathType = NORMAL
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = ICBM ;SupW_NeutronMissile
  ProjectileExhaust = NeutronMissileExhaust
  FireFX = WeaponFX_NeutronMissile
  ProjectileDetonationFX = None   ; not used for this weapon (it's "special")
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0           ; not used for this weapon (it's "special")
  ClipSize = 1                    ; not used for this weapon (it's "special")
  ClipReloadTime = 0              ; not used for this weapon (it's "special")
  AutoReloadsClip = No            ; not used for this weapon (it's "special")
End

;------------------------------------------------------------------------------
Weapon CruiseMissileWeapon
  PrimaryDamage = 0               ; not used for this weapon (it's "special")            
  PrimaryDamageRadius = 0         ; not used for this weapon (it's "special")     
  AttackRange = 99999             ; not used for this weapon (it's "special")
  DamageType = RADIATION          ; not used for this weapon (it's "special")
  DeathType = NORMAL
  WeaponSpeed = 99999             ; not used for this weapon (it's "special")
  ProjectileObject = ICBM ;SupW_NeutronMissile
  ProjectileExhaust = NeutronMissileExhaust
  FireFX = WeaponFX_NeutronMissile
  ProjectileDetonationFX = None   ; not used for this weapon (it's "special")
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0           ; not used for this weapon (it's "special")
  ClipSize = 1                    ; not used for this weapon (it's "special")
  ClipReloadTime = 0              ; not used for this weapon (it's "special")
  AutoReloadsClip = No            ; not used for this weapon (it's "special")
End

;------------------------------------------------------------------------------
Weapon AntiTankA10
  PrimaryDamage               = 200.0            
  PrimaryDamageRadius         = 25.0
  ScatterRadius               = 5.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 445  
  MinimumAttackRange          = 90.0
  AcceptableAimDelta          = 30
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 500
  ProjectileObject            = A10DumbMissile
  ProjectileExhaust           = TowMissileExhaust
  VeterancyProjectileExhaust  = HEROIC TowMissileExhaust
  ;FireFX                      = None
  FireSound                   = ComancheMissileWeapon
  ProjectileDetonationFX      = FX_A10ThunderboltMissileExplosion;FX_ArtilleryBarrage
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 150
  ClipSize                    = 8 
  ClipReloadTime              = 5000 
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon F-18HornetMissileWeapon
  PrimaryDamage               = 200.0            
  PrimaryDamageRadius         = 23.0
  ScatterTargetScalar         = 25; replaces the ScatterRadius, above, for scaling this table, below
  ScatterTarget               = X: 0.000 Y: 0.133
  ScatterTarget               = X: 0.133 Y:-0.200
  ScatterTarget               = X:-0.067 Y: 0.667
  ScatterTarget               = X: 0.300 Y: 0.300
  ScatterTarget               = X: 0.767 Y: 0.000       
  ScatterTarget               = X: 0.500 Y:-0.567        
  ScatterTarget               = X:-0.333 Y:-0.800        
  ScatterTarget               = X:-0.600 Y:-0.1333        
  ScatterTarget               = X:-0.567 Y: 0.433        
  ScatterTarget               = X: 0.000 Y: 0.133
  ScatterTarget               = X: 0.133 Y:-0.200
  ScatterTarget               = X:-0.067 Y: 0.667
  ScatterTarget               = X: 0.300 Y: 0.300
  ScatterTarget               = X: 0.767 Y: 0.000       
  ScatterTarget               = X: 0.500 Y:-0.567        
  ScatterTarget               = X:-0.333 Y:-0.800        
  ScatterTarget               = X:-0.600 Y:-0.1333        
  ScatterTarget               = X:-0.567 Y: 0.433        
  ScatterTarget               = X: 0.000 Y: 0.133
  ScatterTarget               = X: 0.133 Y:-0.200
  AttackRange                 = 270 ;380.0
  ;MinimumAttackRange          = 120.0
  AcceptableAimDelta          = 30
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = F-18BunkerBuster
  FireFX                      = FX_AuroraBombLaunch
  ProjectileDetonationFX      = FX_ArtilleryBarrage;WeaponFX_MineDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 100
  ClipSize                    = 4 
  ClipReloadTime              = 8000 
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon F-18HornetLaserGuidedMissileWeapon
  PrimaryDamage               = 255.0            
  PrimaryDamageRadius         = 55.0
  ScatterTargetScalar         = 25; replaces the ScatterRadius, above, for scaling this table, below
  ScatterTarget               = X: 0.000 Y: 0.133
  ScatterTarget               = X: 0.133 Y:-0.200
  ScatterTarget               = X:-0.067 Y: 0.667
  ScatterTarget               = X: 0.300 Y: 0.300
  ScatterTarget               = X: 0.767 Y: 0.000       
  ScatterTarget               = X: 0.500 Y:-0.567        
  ScatterTarget               = X:-0.333 Y:-0.800        
  ScatterTarget               = X:-0.600 Y:-0.1333        
  ScatterTarget               = X:-0.567 Y: 0.433        
  ScatterTarget               = X: 0.000 Y: 0.133
  ScatterTarget               = X: 0.133 Y:-0.200
  ScatterTarget               = X:-0.067 Y: 0.667
  ScatterTarget               = X: 0.300 Y: 0.300
  ScatterTarget               = X: 0.767 Y: 0.000       
  ScatterTarget               = X: 0.500 Y:-0.567        
  ScatterTarget               = X:-0.333 Y:-0.800        
  ScatterTarget               = X:-0.600 Y:-0.1333        
  ScatterTarget               = X:-0.567 Y: 0.433        
  ScatterTarget               = X: 0.000 Y: 0.133
  ScatterTarget               = X: 0.133 Y:-0.200
  AttackRange                 = 395.0
  ;MinimumAttackRange          = 100.0
  AcceptableAimDelta          = 30
  DamageType                  = EXPLOSION
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = F-18BunkerBuster
  FireFX                      = FX_AuroraBombLaunch
  ProjectileDetonationFX      = FX_ArtilleryBarrage;WeaponFX_MineDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 100
  ClipSize                    = 4 
  ClipReloadTime              = 8000
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon HoverCrusaderTankGun
  PrimaryDamage           = 75.0
  PrimaryDamageRadius     = 8.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 185.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 400                           ; dist/sec 
  WeaponRecoil            = 9                            ; angle to deflect the model when firing
  ProjectileObject        = GenericTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX  = WeaponFX_NewTankShellDetonation;WeaponFX_GenericTankShellDetonation
  FireSound               = CrusaderTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 2000              ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0              ; how long to reload a Clip, msec
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon TankMachineGun
  PrimaryDamage           = 9.0
  PrimaryDamageRadius     = 1.0
  AttackRange             = 170.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = COMANCHE_VULCAN
  DeathType               = NORMAL
  WeaponSpeed             = 1000                           ; dist/sec 
  WeaponRecoil            = 0                            ; angle to deflect the model when firing
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                  = WeaponFX_TechnicalGunFire
  VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound               = ComancheWeaponMachineGun
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 50               ; time between shots, msec
End

;------------------------------------------------------------------------------
Weapon DevastatorTankGun
  PrimaryDamage = 135.0
  PrimaryDamageRadius = 20.0
  ScatterRadiusVsInfantry = 4.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 210.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 300                           ; dist/sec 
  WeaponRecoil = 13                            
  ProjectileObject = GenericTankShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = FX_FireBaseHowitzerExplosion;WeaponFX_GenericTankShellDetonation
  ProjectileDetonationOCL = OCL_RadiationFieldSmall
  FireSound = MarauderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2000        ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1500              ; how long to reload a Clip, msec

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 

End

;------------------------------------------------------------------------------
Weapon MineCannon
  PrimaryDamage = 20.0
  PrimaryDamageRadius = 65.0
  ScatterRadius     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 550
  MinimumAttackRange = 50.0
  MinTargetPitch = -90
  MaxTargetPitch = 79
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 300         ; dist/sec 
  MinWeaponSpeed = 75        
  ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range
  ProjectileObject = MineShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX  = WeaponFX_MineDetonation
  FireSound = StrategyCenter_ArtilleryRound
  RadiusDamageAffects = ENEMIES NEUTRALS ALLIES NOT_SIMILAR
  ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 25000              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon TOWMissileWeapon
  PrimaryDamage = 85.0            
  PrimaryDamageRadius = 10.0      
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 190.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  ProjectileObject = TOWMissile
  ProjectileExhaust = TowMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 600  ; time between shots, msec
  ClipSize = 5            ; how many shots in a Clip (0 == infinite) ; You have to have a clip size as a missile weapon
  ClipReloadTime = 4000     how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireSound = HumveeWeaponTOW
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon ScrapCrusaderTankGun
  PrimaryDamage           = 75.0
  PrimaryDamageRadius     = 9.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 180.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 400                           ; dist/sec 
  WeaponRecoil            = 6                            ; angle to deflect the model when firing
  ProjectileObject        = GenericTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX  = WeaponFX_NewTankShellDetonation;WeaponFX_GenericTankShellDetonation
  FireSound               = CrusaderTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 2000               ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 1400              ; how long to reload a Clip, msec
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon ScrapBattleMasterTankGun
  PrimaryDamage           = 65.0
  PrimaryDamageRadius     = 7.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 150.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 400                           ; dist/sec 
  WeaponRecoil            = 4                            ; angle to deflect the model when firing
  ProjectileObject        = BattleMasterTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ProjectileDetonationFX  = WeaponFX_NewTankShellDetonation;WeaponFX_GenericTankShellDetonation
  FireSound               = BattlemasterTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 2000               ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 1200              ; how long to reload a Clip, msec
  WeaponBonus             = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon StingerRocket
  PrimaryDamage = 75.0            
  PrimaryDamageRadius = 8.0      
  ScatterRadiusVsInfantry     = 6.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 205.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 750               ; ignored for projectile weapons
  ProjectileObject = StingerMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0  ; time between shots, msec
  ClipSize = 1             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1800    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = StingerMissileWeapon
  ProjectileDetonationFX = WeaponFX_StingerMissileDetonation
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon J-10NapalmMissile
  PrimaryDamage               = 85.0            
  PrimaryDamageRadius         = 9.0      
  SecondaryDamage             = 60.0          
  SecondaryDamageRadius       = 40.0  
  DamageType                  = JET_MISSILES ; since creates FireField to do the flame damage
  DeathType                   = EXPLODED
  AttackRange                 = 390.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30
  DelayBetweenShots           = 100             ; time between shots, msec
  ClipSize                    = 6                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ;ProjectileDetonationFX      = WeaponFX_NapalmMissileDetonation
  ;ProjectileDetonationOCL     = OCL_FireFieldSmall
  ;DamageDealtAtSelfPosition   = Yes
  ;HistoricBonusTime           = 3000
  ;HistoricBonusCount          = 8
  ;HistoricBonusRadius         = 100
  ;HistoricBonusWeapon         = FirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  ShowsAmmoPips               = Yes
End
 
;------------------------------------------------------------------------------
Weapon J-10BlackNapalmMissile
  PrimaryDamage               = 100.0            
  PrimaryDamageRadius         = 11.0      
  SecondaryDamage             = 70.0          
  SecondaryDamageRadius       = 50.0  
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  AttackRange                 = 390.0
  MinimumAttackRange          = 80.0 ; used to be 100.0, but that was too large for mig/missile speed
  ProjectileObject            = NapalmMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = WeaponFX_NapalmMissile
  FireSound                   = MigJetNapalmWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  AcceptableAimDelta          = 30 
  DelayBetweenShots           = 100             ; time between shots, msec
  ClipSize                    = 6                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 8000               ; how long to reload a Clip, msec
  AutoReloadsClip             = RETURN_TO_BASE                 ; must return to base to reload this weapon
  AntiGround                  = Yes
  ProjectileDetonationFX      = WeaponFX_BlackNapalmExplosion
  ;ProjectileDetonationOCL     = OCL_FireFieldUpgradedSmall
  ;DamageDealtAtSelfPosition   = Yes
  ;HistoricBonusTime           = 3000
  ;HistoricBonusCount          = 8
  ;HistoricBonusRadius         = 100
  ;HistoricBonusWeapon         = BlackNapalmFirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon J-10JetMissileWeapon

  PrimaryDamage               = 120.0            
  PrimaryDamageRadius         = 9.0
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 400 ;440.0
  MinimumAttackRange          = 100.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 150
  ClipSize                    = 6 
  ClipReloadTime              = 8000 
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon GLAJarmenKellRifleAnti-TankRound
  PrimaryDamage = 100.0
  PrimaryDamageRadius = 5.0
  AttackRange = 500.0
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject = NONE
  FireFX = WeaponFX_GenericMachineGunFire
  FireSound = JarmenKellWeaponSnipe
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 2500               ; time between shots, msec
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0              ; how long to reload a Clip, msec
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon KingScorpionTankGun
  PrimaryDamage = 48.0
  PrimaryDamageRadius = 8.0
  ScatterRadiusVsInfantry = 7.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 180.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 400                           ; dist/sec 
  WeaponRecoil = 7                            ; angle to deflect the model when firing
  ProjectileObject = ScorpionTankShell
  FireFX = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ;Commented out to show it has been moved to ScorpionTankGunFXWeapon, 
  ;because the art for the Toxin shell version incorporates the normal explosion.
;  ProjectileDetonationFX = WeaponFX_NewTankShellDetonation2
  FireSound = ScorpionTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 250        ; time between shots, msec
  ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 1250              ; how long to reload a Clip, msec


  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon KingScorpionMissileWeapon
  PrimaryDamage = 200.0            
  PrimaryDamageRadius = 13.0      
  SecondaryDamage = 110.0          
  SecondaryDamageRadius = 45.0    
  ScatterRadiusVsInfantry     = 4.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 470.0
  MinimumAttackRange = 40.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 600               ; ignored for projectile weapons
  ProjectileObject = KingScorpionMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = FX_BuggyMissileIgnition
  FireSound                   = ScorpionMissileWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 200  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 15000  ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
  ProjectileDetonationFX = FX_BuggyNewDeathExplosion;WeaponFX_RocketBuggyMissileDetonation

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon BriefcaseNuke
  LeechRangeWeapon = Yes
  PrimaryDamage = 1350.0            
  PrimaryDamageRadius = 100.0      
  SecondaryDamage = 280.0          
  SecondaryDamageRadius = 95.0    
  AttackRange = 5.0
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed = 99999.0             
  ProjectileObject = NONE
  RadiusDamageAffects = SELF ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 0                   ; time between shots, msec
  ClipSize = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 0               ; how long to reload a Clip, msec
  AutoReloadsClip = No 
  ShockWaveAmount   = 75.0 ; represents the shockwave amount. The larger the amount, the greater and more dramatic the shockwave effect    
  ShockWaveRadius     = 40.0 ;100 ; should be no more than the primary/secondary damage radius, whichever is larger.
  ShockWaveTaperOff  = 0.33    ; 0.33 means at the shockwave edge, the shockwave amount is 33%.
End

;------------------------------------------------------------------------------
Weapon InfernoStrikeDamageWeapon
  PrimaryDamage         = 95.0     ;GS changed to what it was secretly doing pending review
  PrimaryDamageRadius   = 50.0      
  AttackRange           = 130.0
  DamageType            = EXPLOSION         
  DeathType             = EXPLODED
  WeaponSpeed           = 99999.0             
  ProjectileDetonationFX = FX_ArtilleryBarrage
  RadiusDamageAffects   = ENEMIES NEUTRALS ALLIES
  DelayBetweenShots     = 0    ; time between shots, msec
  ClipSize              = 1    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0    ; how long to reload a Clip, msec
  AutoReloadsClip       = No 
  HistoricBonusTime     = 3000
  HistoricBonusCount    = 6
  HistoricBonusRadius   = 50
  HistoricBonusWeapon   = FirestormSmallCreationWeapon
End

;------------------------------------------------------------------------------
Weapon PartisanAk-47Two
  PrimaryDamage         = 24.0
  PrimaryDamageRadius   = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 150.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 3000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject      = GenericMachineGunProjectile
  ;ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers ; Heroic rebels get different FireFX
  FireSound             = AngryMobWeaponAK47
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 50               ; time between shots, msec
  ClipSize              = 60                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1600              ; how long to reload a Clip, msec
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon PartisanAK47
  PrimaryDamage         = 12.0
  PrimaryDamageRadius   = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 150.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 3000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject      = GenericMachineGunProjectile
  ;ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers ; Heroic rebels get different FireFX
  FireSound             = AngryMobWeaponAK47
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 50               ; time between shots, msec
  ClipSize              = 30                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 800              ; how long to reload a Clip, msec
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;------------------------------------------------------------------------------
Weapon PartisanPistol
  PrimaryDamage         = 10.0
  PrimaryDamageRadius   = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 140.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  FireFX                = WeaponFX_GenericMachineGunFire
  VeterancyFireFX       = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers ; Heroic rebels get different FireFX
  FireSound             = CombatCycleRebelWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 100               ; time between shots, msec
  ClipSize              = 9                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 1000              ; how long to reload a Clip, msec
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; AP weapon upgrade
End

;--------------------------------------------------- 
Weapon PathfinderStrikeOCL 
  PrimaryDamage = 0.0 
  PrimaryDamageRadius = 1.0 
  AttackRange = 140.0 
  DamageType = EXPLOSION 
  DeathType = EXPLODED 
  WeaponSpeed = 99999.0 
  ProjectileObject = NONE 
  FireFX = WeaponFX_RangerFlashBangGrenadeDetonation 
  FireOCL = OCL_PathfinderBeacon 
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS 
  DelayBetweenShots = 0 ; time between shots, msec; 
  ClipSize = 1 ; how many shots in a Clip (0 == infinite) 
  ClipReloadTime = 120000 ; how long to reload a Clip, msec 
  AutoReloadsClip = No 
  AntiGround = Yes 
  DamageDealtAtSelfPosition = Yes 
End 

;------------------------------------------------------------------------------ 
Weapon LaserTargeter
  PrimaryDamage = 1.0 
  PrimaryDamageRadius = 1.0 
  ScatterRadiusVsInfantry = 10.0 ;When this weapon is used against infantry, it can randomly 
  AttackRange = 600.0 ;Extending this range, allows the special ability to work better. 
  DamageType = ARMOR_PIERCING 
  DeathType = NORMAL 
  WeaponSpeed = 600 
  ProjectileObject = PathfinderBeaconProjectile 
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS 
  ScatterRadius = 0 ; This weapon will scatter somewhere within a circle of this radius, 
  DelayBetweenShots = 500 ; time between shots, msec 
  ClipSize = 1 ; how many shots in a Clip (0 == infinite) 
  ClipReloadTime = 130000 ; how long to reload a Clip, msec 
  AutoReloadsClip = Yes 
  ProjectileCollidesWith = STRUCTURES 
End

;------------------------------------------------------------------------------
;new weapon
;------------------------------------------------------------------------------
Weapon A+AntiTankMissileWeapon
  PrimaryDamage               = 100            
  PrimaryDamageRadius         = 8.5      
  SecondaryDamage             = 35.5          
  SecondaryDamageRadius       = 25.0    
  ScatterRadiusVsInfantry     = 15.5     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 200.0
  MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
  DamageType                  = JET_MISSILES  ;not so good against base defenses and some other units.  
  DeathType                   = EXPLODED
  WeaponSpeed                 = 9999.0
  ProjectileObject            = ComancheAntiTankMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicComancheMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 400            ; time between shots, msec
  ClipSize                    = 10              ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip             = Yes
  ClipReloadTime              = 1400                      ; how long to reload a Clip, msec
  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)
  FireSound                   = ComancheMissileWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_ComancheAntiTankMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon BossRaptorMissiles
  PrimaryDamage               = 95            
  PrimaryDamageRadius         = 5.0      
  SecondaryDamage             = 30.0          
  SecondaryDamageRadius       = 25.0    
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 200.0
  MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
  DamageType                  = JET_MISSILES  ;not so good against base defenses and some other units.  
  DeathType                   = EXPLODED
  WeaponSpeed                 = 9999.0
  ProjectileObject            = ComancheAntiTankMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicComancheMissileExhaust
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 300            ; time between shots, msec
  ClipSize                    = 12              ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip             = Yes
  ClipReloadTime              = 1000                      ; how long to reload a Clip, msec
  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)
  FireSound                   = RaptorJetMissileWeapon
  FireFX                      = None
  ProjectileDetonationFX      = WeaponFX_ComancheAntiTankMissileDetonation
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon LightGenericTankMachineGun
  PrimaryDamage               = 5.0
  PrimaryDamageRadius         = 0.5       ; 0 primary radius means "hits only intended victim"
  AttackRange                 = 255.0      
  MinimumAttackRange          = 1.5
  DamageType                  = COMANCHE_VULCAN  ;used only for this weapon so stinger sites don't lose their guys but otherwise acts just like Small_Arms
  DeathType                   = NORMAL
  WeaponSpeed                 = 3000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject            = GenericMachineGunProjectile
  ProjectileDetonationFX      = WeaponFX_NewGenericMachineGunImpacts
  FireFX                      = WeaponFX_GenericMachineGunFire
  VeterancyFireFX             = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound                   = ComancheWeaponMachineGun
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 75         ; time between shots, msec
  ClipSize                    = 200                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1200              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon LightGenericTankMachineGunAir
  PrimaryDamage               = 2.5
  PrimaryDamageRadius         = 0.5       ; 0 primary radius means "hits only intended victim"
  AttackRange                 = 255.0      
  MinimumAttackRange          = 1.5
  DamageType                  = COMANCHE_VULCAN  ;used only for this weapon so stinger sites don't lose their guys but otherwise acts just like Small_Arms
  DeathType                   = NORMAL
  WeaponSpeed                 = 3000.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject            = NONE
  FireFX                      = WeaponFX_GenericMachineGunFire
  VeterancyFireFX             = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound                   = ComancheWeaponMachineGun
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 80         ; time between shots, msec
  ClipSize                    = 60                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1200              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = No
End

;------------------------------------------------------------------------------
Weapon MediumGenericTankMachineGun
  PrimaryDamage = 9.0
  PrimaryDamageRadius = 1.0
  AttackRange = 320.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 2100         ; dist/sec 
  ProjectileObject            = GenericMachineGunProjectile
  ProjectileDetonationFX      = WeaponFX_NewGenericMachineGunImpacts
  FireFX                      = WeaponFX_Comanche20mmCannonFire
  VeterancyFireFX             = HEROIC WeaponFX_HeroicComanche20mmCannonFire
  FireSound                   = HumveeWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 50         ; time between shots, msec
  ClipSize                    = 80                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1500              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon MediumGenericTankMachineGunAir
  PrimaryDamage = 5.0
  PrimaryDamageRadius = 1.0
  AttackRange = 320.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 2100         ; dist/sec 
  ProjectileObject = NONE
  FireFX                      = WeaponFX_Comanche20mmCannonFire
  VeterancyFireFX             = HEROIC WeaponFX_HeroicComanche20mmCannonFire
  FireSound                   = HumveeWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 70         ; time between shots, msec
  ClipSize                    = 50                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1500              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = No
End

;------------------------------------------------------------------------------
Weapon HeavyGenericTankMachineGun 
  PrimaryDamage = 13.0  ; 15.0 
  PrimaryDamageRadius = 1.0
  AttackRange = 380.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 2500         ; dist/sec 
  ProjectileObject            = GenericMachineGunProjectile
  ProjectileDetonationFX      = WeaponFX_NewGenericMachineGunImpacts ;WeaponFX_NewGenericMachineGunImpacts2
  FireFX                      = WeaponFX_Comanche20mmCannonFire
  VeterancyFireFX             = HEROIC WeaponFX_HeroicComanche20mmCannonFire
  FireSound                   = HumveeWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40         ; time between shots, msec
  ClipSize                    = 70                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = No
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon HeavyGenericTankMachineGunAir 
  PrimaryDamage = 7.5  ; 15.0 
  PrimaryDamageRadius = 1.0
  AttackRange = 380.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 2500         ; dist/sec 
  ProjectileObject = NONE
  FireFX                      = WeaponFX_Comanche20mmCannonFire
  VeterancyFireFX             = HEROIC WeaponFX_HeroicComanche20mmCannonFire
  FireSound                   = HumveeWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 60         ; time between shots, msec
  ClipSize                    = 40                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 2000              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = No
End

;------------------------------------------------------------------------------
Weapon LTVPMachineGun 
  PrimaryDamage = 20.0  ; 22.0 
  PrimaryDamageRadius = 1.0
  AttackRange = 380.0
  DamageType = COMANCHE_VULCAN  
  DeathType = NORMAL
  WeaponSpeed = 2800         ; dist/sec 
  ProjectileObject            = GenericMachineGunProjectile
  ProjectileDetonationFX      = WeaponFX_NewGenericMachineGunImpacts
  FireFX                      = WeaponFX_Comanche20mmCannonFire
  VeterancyFireFX             = HEROIC WeaponFX_HeroicComanche20mmCannonFire
  FireSound                   = ComancheWeaponMachineGun
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 50         ; time between shots, msec
  ClipSize                    = 600                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1200              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon GenericAPCMachineGun
  PrimaryDamage               = 16.0
  PrimaryDamageRadius         = 0.5       ; 0 primary radius means "hits only intended victim"
  AttackRange                 = 200.0      
  MinimumAttackRange          = 0.5
  DamageType                  = COMANCHE_VULCAN  ;used only for this weapon so stinger sites don't lose their guys but otherwise acts just like Small_Arms
  DeathType                   = NORMAL
  WeaponSpeed                 = 2100.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject            = GenericMachineGunProjectile
  ProjectileDetonationFX      = WeaponFX_NewGenericMachineGunImpacts
  FireFX                      = WeaponFX_GenericMachineGunFire
  VeterancyFireFX             = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound                   = HumveeWeapon
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 60         ; time between shots, msec
  ClipSize                    = 400                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 1400              ; how long to reload a Clip, msec
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon GenericJetMachineGun
  PrimaryDamage         = 28.0 
  PrimaryDamageRadius   = 2.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 450.0
  MinimumAttackRange    = 40.0 
  DamageType            = Gattling
  DeathType             = NORMAL
  WeaponSpeed           = 3000.0 
  ProjectileObject      = GenericMachineGunProjectile
  ProjectileDetonationFX = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                = WeaponFX_SpectreGattlingMuzzleFlash
  VeterancyFireFX       = HEROIC WeaponFX_GattlingCannonMachineGunFireWithRedTracers
  FireSound             = SpectreGunshipGattlingWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 40
  ClipSize                    = 60 
  ClipReloadTime              = 2000
  AutoReloadsClip             = RETURN_TO_BASE 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = Yes
  AntiGround                  = Yes
End

;------------------------------------------------------------------------------
Weapon GenericHowitzerGun
  PrimaryDamage         = 160.0            
  PrimaryDamageRadius   = 17.0      
  ScatterRadius         = 15.0
  ScatterRadiusVsInfantry = 15.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 555.0
  MinimumAttackRange = 80.0
  MinTargetPitch = -90                   ; we may not target anything outside of this pitch range
  MaxTargetPitch = 79                    ; ditto
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 210                           ; dist/sec 
  WeaponRecoil = 8                            ; angle to deflect the model when firing
  ProjectileObject = StrategyCenterArtilleryShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX = FX_StrategyCenterBarrage
  FireSound = StrategyCenter_ArtilleryRound
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 5500              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon BradleyTankGun 
  PrimaryDamage          = 34.0 
  PrimaryDamageRadius    = 5.0       ; 0 primary radius means "hits only intended victim"
  AttackRange            = 200.0    
  DamageType             = EXPLOSION
  DeathType              = EXPLODED
  WeaponSpeed            = 999.0          ; dist/sec (huge value == effectively instant)
  ;AcceptableAimDelta     = 180.0 ;;;; can fire facing any direction... allows gunship to shoot sideways
  ProjectileObject       = SpectreHowitzerShell
  FireFX                 = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX        = HEROIC WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  FireSound              = StrategyCenter_ArtilleryRound
  RadiusDamageAffects    = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots      = 500               ; time between shots, msec
  ClipSize               = 20                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime         = 2000              ; how long to reload a Clip, msec
  ;ContinuousFireOne      = 1 ; How many shots at the same target constitute "Continuous Fire"
  ;ContinuousFireTwo      = 2 ; How many shots at the same target constitute "Continuous Fire Two"
  ;ContinuousFireCoast    = 2000 ; msec we can coast without firing before we lose Continuous Fire
  ;WeaponBonus            = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 150% ; When the object achieves this state, this weapon gets double the rate of fire
  ;WeaponBonus            = CONTINUOUS_FIRE_FAST RATE_OF_FIRE 200% ; This is not cumulative, so with Delay of 40, and values of 2 and 4 for these  bonuses, you shoot at (40, 20, 10)
  ;WeaponBonus            = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  AntiAirborneVehicle    = No
  AntiAirborneInfantry   = No
  AntiSmallMissile       = No
  AntiBallisticMissile   = No
  AntiGround             = Yes
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon BradleyTOWMissileWeapon
  PrimaryDamage = 35.0            
  PrimaryDamageRadius = 8.0      
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 250.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 850               ; ignored for projectile weapons
  ProjectileObject = StingerMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 700  ; time between shots, msec
  ClipSize = 2             ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2000    ; how long to reload a Clip, msec
  AutoReloadsClip = Yes 
  FireFX = FX_StingerMissileIgnition
  FireSound = HumveeWeaponTOW
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  AntiAirborneVehicle = Yes
  AntiAirborneInfantry = No
  AntiGround = Yes
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade


  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End


;------------------------------------------------------------------------------
Weapon MRLSRocketBarrage
  PrimaryDamage               = 38.5            
  PrimaryDamageRadius         = 10.0      
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage             = 10.0          
  SecondaryDamageRadius       = 14.0    
  AttackRange                 = 540.0
  MinimumAttackRange          = 50.0 ;150.0 ; Rockets take some distance to target, and you don't want them to blow up in your face.
  DamageType                  = EXPLOSION          ; ignored for projectile weapons
  DeathType                   = EXPLODED
  WeaponSpeed                 = 600               ; ignored for projectile weapons
  ProjectileObject            = PatriotMissile
  ProjectileExhaust           = TowMissileExhaust;MissileExhaust
  FireSound                   = PatriotBatteryWeapon
  FireFX                      = FX_BuggyMissileIgnition
  ;VeterancyProjectileExhaust  = HEROIC HeroicComancheMissileExhaust TowMissileExhaust
  ProjectileDetonationFX      = WeaponFX_ComancheAntiTankMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  ScatterRadius               = 1      ; This weapon will scatter somewhere within a circle of this radius, instead of hitting someone directly
  DelayBetweenShots           = 300  ; time between shots, msec
  ClipSize                    = 20            ; how many shots in a Clip (0 == infinite)
  ClipReloadTime              = 6500    ; how long to reload a Clip, msec
  AutoReloadsClip             = Yes 
  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)
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; AP rocket upgrade
  ProjectileCollidesWith      = STRUCTURES
  MissileCallsOnDie           = Yes
End

;------------------------------------------------------------------------------
Weapon MRLSRocketBarrageAir
  PrimaryDamage               = 80.0            
  PrimaryDamageRadius         = 7.0      
  SecondaryDamage             = 30.0          
  SecondaryDamageRadius       = 25.0    
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 485.0
  MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
  DamageType                  = JET_MISSILES  ;not so good against base defenses and some other units.  
  DeathType                   = EXPLODED
  WeaponSpeed                 = 99999
  ProjectileObject            = PatriotMissile
  ProjectileExhaust           = TowMissileExhaust;MissileExhaust
  FireSound                   = PatriotBatteryWeapon
  FireFX                      = FX_BuggyMissileIgnition
  ;VeterancyProjectileExhaust  = HEROIC HeroicComancheMissileExhaust TowMissileExhaust
  ProjectileDetonationFX      = WeaponFX_AntiAircraftMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 500            ; time between shots, msec
  ClipSize                    = 8              ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip             = Yes
  ClipReloadTime              = 7000                      ; how long to reload a Clip, msec
  AutoReloadWhenIdle          = 7000    ; If I haven't fired in this long, I will reload on my own (rather than only after the last one is fired)
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneInfantry        = No
  AntiAirborneVehicle         = Yes
  ShowsAmmoPips               = No
  AntiGround                  = No
  WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; Hellfire Missiles upgrade
End

;------------------------------------------------------------------------------
Weapon M48TankGun
  PrimaryDamage           = 130.0
  PrimaryDamageRadius     = 12.0
  ScatterRadiusVsInfantry = 30.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 210.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 400                           ; dist/sec 
  WeaponRecoil            = 10                            ; angle to deflect the model when firing
  ProjectileObject        = BattleMasterTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracerSmall
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracerSmall
  ProjectileDetonationFX  = WeaponFX_NewTankShellDetonation;WeaponFX_GenericTankShellDetonation
  FireSound               = BattlemasterTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 3000               ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0              ; how long to reload a Clip, msec
  ProjectileCollidesWith  = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon M60TankGun
  PrimaryDamage           = 100.0
  PrimaryDamageRadius     = 5.0
  ScatterRadiusVsInfantry = 35.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange             = 200.0
  MinTargetPitch          = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch          = 15                          ; ditto
  DamageType              = ARMOR_PIERCING
  DeathType               = NORMAL
  WeaponSpeed             = 400                           ; dist/sec 
  WeaponRecoil            = 10                            ; angle to deflect the model when firing
  ProjectileObject        = GenericTankShell
  FireFX                  = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX         = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX  = WeaponFX_NewTankShellDetonation;WeaponFX_GenericTankShellDetonation
  FireSound               = CrusaderTankWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 3700               ; time between shots, msec
  ClipSize                = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 0              ; how long to reload a Clip, msec
  ProjectileCollidesWith  = STRUCTURES WALLS 
End
;------------------------------------------------------------------------------
Weapon Avenger2PaintWeapon
  PrimaryDamage         = 1.0
  PrimaryDamageRadius   = 0.0       ; 0 primary radius means "hits only intended victim"
  AttackRange           = 445.0
  DamageType            = SMALL_ARMS
  DeathType             = NORMAL
  WeaponSpeed           = 999999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject      = NONE
  LaserName             = AvengerLaserBeam
  LaserBoneName         = TurretFX02
;  FireFX                = WeaponFX_PaladinPointDefenseLaser
;  VeterancyFireFX       = HEROIC WeaponFX_PaladinPointDefenseLaser
  FireSound             = AvengerAirLaserWeapon
  RadiusDamageAffects   = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots     = 250               ; time between shots, msec
  ClipSize              = 0                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime        = 0              ; how long to reload a Clip, msec
  ContinuousFireOne     = 1 ; How many shots at the same target constitute "Continuous Fire"
  ContinuousFireTwo     = 5 ; How many shots at the same target constitute "Continuous Fire Two"
  ContinuousFireCoast   = 2000 ; msec we can coast without firing before we lose Continuous Fire
  WeaponBonus           = CONTINUOUS_FIRE_MEAN RATE_OF_FIRE 200% ; When the object achieves this state, this weapon gets double the rate of fire
  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)
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125%     ; ChainGun upgrade
  ProjectileCollidesWith      = ENEMIES STRUCTURES WALLS SHRUBBERY
  WeaponBonus           = PLAYER_UPGRADE DAMAGE 125% ; LaserBatteries
  AntiAirborneVehicle   = Yes
  AntiAirborneInfantry  = Yes
  AntiSmallMissile      = No
  AntiBallisticMissile  = Yes
  AntiGround            = No
End

;------------------------------------------------------------------------------
Weapon Nuke_EF2000NukeWeapon
  PrimaryDamage           = 1950.0            
  PrimaryDamageRadius     = 150.0      
  AttackRange             = 310.0       ; this needs to be pretty high, since the Aurora moves so fast
  AcceptableAimDelta      = 45          ; we don't really need to be aimed directly at the target.
  DamageType = EXPLOSION         
  DeathType = EXPLODED
  WeaponSpeed             = 99999
  ProjectileObject            = Nuke_EF2000NukeBomb
  FireFX                      = FX_AuroraBombLaunch
  ProjectileDetonationFX      = Nuke_WeaponFX_NukeCannon 
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  ClipSize                = 1                        ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 10000              ; how long to reload a Clip, msec
  AutoReloadsClip         = RETURN_TO_BASE                 ; must return to base to reload this weapon
  ShowsAmmoPips           = Yes

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith  = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon SpartanHowitzerGun
  PrimaryDamage         = 110.0            
  PrimaryDamageRadius   = 11.0      
  ScatterRadius         = 15.0
  ScatterRadiusVsInfantry = 15.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 525.0
  MinimumAttackRange = 40.0
  MinTargetPitch = -90                   ; we may not target anything outside of this pitch range
  MaxTargetPitch = 79                    ; ditto
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 310                           ; dist/sec 
  WeaponRecoil = 5                            ; angle to deflect the model when firing
  ProjectileObject          = GenericTankShell
  FireFX                    = WeaponFX_GenericTankGunNoTracer
  ProjectileDetonationFX    = WeaponFX_NewTankShellDetonation2
  FireSound = CrusaderTankWeapon
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 4500              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 0                    ; how many shots in a Clip (0 == infinite)
  WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon MineTankDeployClusterMinesWeapon
  PrimaryDamage = 20.0
  PrimaryDamageRadius = 65.0
  ScatterRadius     = 0.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 550
  MinimumAttackRange = 50.0
  MinTargetPitch = -90
  MaxTargetPitch = 79
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 300         ; dist/sec 
  MinWeaponSpeed = 75        
  ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range
  ProjectileObject = MineShell
  FireFX = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX  = WeaponFX_MineDetonation
  FireSound = StrategyCenter_ArtilleryRound
  RadiusDamageAffects = ENEMIES NEUTRALS ALLIES NOT_SIMILAR
  ClipSize = 1                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 140000              ; how long to reload a Clip, msec
End

;------------------------------------------------------------------------------
Weapon AV8HarrierMissileWeapon
  PrimaryDamage               = 140.0            
  PrimaryDamageRadius         = 9.0
  ScatterRadiusVsInfantry     = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 375 ;440.0
  MinimumAttackRange          = 100.0
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 150
  ClipSize                    = 3 
  ClipReloadTime              = 8000 
  AutoReloadsClip             = RETURN_TO_BASE
  ProjectileDetonationOCL     = OCL_FireFieldSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 8
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = FirestormSmallCreationWeapon 
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon AV8HarrierLaserGuidedMissileWeapon
  PrimaryDamage               = 155.0            
  PrimaryDamageRadius         = 12.0      
  ScatterRadiusVsInfantry     = 8.0
  AttackRange                 = 400 ;390.0
  MinimumAttackRange          = 60.0 
  AcceptableAimDelta          = 30
  DamageType                  = JET_MISSILES
  DeathType                   = EXPLODED
  WeaponSpeed                 = 1000
  ProjectileObject            = RaptorJetMissile
  ProjectileExhaust           = MissileExhaust
  VeterancyProjectileExhaust  = HEROIC HeroicMissileExhaust
  FireFX                      = None
  FireSound                   = RaptorJetMissileWeapon
  ProjectileDetonationFX      = WeaponFX_JetMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS NOT_SIMILAR
  DelayBetweenShots           = 150                      
  ClipSize                    = 3                        
  ClipReloadTime              = 8000                     
  AutoReloadsClip             = RETURN_TO_BASE           
  ProjectileDetonationOCL     = OCL_FireFieldSmall
  DamageDealtAtSelfPosition   = Yes
  HistoricBonusTime           = 3000
  HistoricBonusCount          = 8
  HistoricBonusRadius         = 100
  HistoricBonusWeapon         = FirestormSmallCreationWeapon
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  AntiGround                  = Yes
  ShowsAmmoPips               = Yes
End

;------------------------------------------------------------------------------
Weapon BattleshipMachineGun
  PrimaryDamage           = 75.0
  PrimaryDamageRadius     = 3.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 1000.0
  DamageType              = Gattling
  DeathType               = NORMAL
  WeaponSpeed             = 99999.0          ; dist/sec (huge value == effectively instant)
  ProjectileObject        = GenericMachineGunProjectile
  ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts2
  FireFX                  = WeaponFX_QuadCannonGunFire
  FireSound               = QuadCannonWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 70               ; time between shots, msec
  ClipSize                = 1000                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 900              ; how long to reload a Clip, msec
  AutoReloadsClip         = Yes
  AntiAirborneVehicle     = Yes
  AntiAirborneInfantry    = Yes
  AntiGround              = No
End

;------------------------------------------------------------------------------
Weapon MammothTankGun
  PrimaryDamage = 125 ;150.0
  PrimaryDamageRadius = 14.0
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  SecondaryDamage = 20.0
  SecondaryDamageRadius = 10.0
  AttackRange = 265.0
  MinTargetPitch = -15                         ; we may not target anything outside of this pitch range
  MaxTargetPitch = 15                          ; ditto
  DamageType = ARMOR_PIERCING
  DeathType = NORMAL
  WeaponSpeed = 300                           ; dist/sec 
  WeaponRecoil = 7                            ; angle to deflect the model when firing
  ProjectileObject = OverlordTankShell
  FireFX            = WeaponFX_GenericTankGunNoTracer
  VeterancyFireFX   = HEROIC WeaponFX_HeroicGenericTankGunNoTracer
  ProjectileDetonationFX = FX_FireBaseHowitzerExplosion;WeaponFX_GenericTankShellDetonation
  FireSound = StrategyCenter_ArtilleryRound
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 300              ; time between shots, msec
  ShotsPerBarrel = 1                   ; By default, shoot one shot per barrel
  ClipSize = 2                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime = 2500              ; how long to reload a Clip, msec
  ;WeaponBonus = PLAYER_UPGRADE DAMAGE 125% ; UraniumShells

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES WALLS 
End

;------------------------------------------------------------------------------
Weapon MammothTankRocketBarrage
  PrimaryDamage               = 40.0            
  PrimaryDamageRadius         = 5.0      
  SecondaryDamage             = 10.0          
  SecondaryDamageRadius       = 15.0    
  ScatterRadiusVsInfantry     = 20.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange                 = 455.0
  MinimumAttackRange          = 0.0 ;100.0       ; this is to allow for a little "lead" for the helicopter targeting
  DamageType                  = JET_MISSILES  ;not so good against base defenses and some other units.  
  DeathType                   = EXPLODED
  WeaponSpeed                 = 99999
  ProjectileObject            = PatriotMissile
  ProjectileExhaust           = MissileExhaust
  FireSound                   = PatriotBatteryWeapon
  FireFX                      = FX_BuggyMissileIgnition
  VeterancyProjectileExhaust  = HEROIC HeroicComancheMissileExhaust ;TowMissileExhaust
  ProjectileDetonationFX      = WeaponFX_ComancheAntiTankMissileDetonation
  RadiusDamageAffects         = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots           = 500            ; time between shots, msec
  ClipSize                    = 4              ; how many shots in a Clip (0 == infinite)
  AutoReloadsClip             = Yes
  ClipReloadTime              = 7000                      ; how long to reload a Clip, msec
  AutoReloadWhenIdle          = 7000    ; If I haven't fired in this long, I will reload on my own (rather than only after the last one is fired)
  ProjectileCollidesWith      = STRUCTURES
  AntiAirborneInfantry        = No
  AntiAirborneVehicle         = Yes
  ShowsAmmoPips               = No
  AntiGround                  = Yes
  ;WeaponBonus                 = PLAYER_UPGRADE DAMAGE 125% ; Hellfire Missiles upgrade
End

;------------------------------------------------------------------------------
Weapon FlameThrowerDetonationWeapon
  FireOCL = OCL_FireFieldSmall
  PrimaryDamage = 75.0
  PrimaryDamageRadius = 10.0
End

;------------------------------------------------------------------------------
Weapon FlameThrowerDetonationWeaponUpgraded
  FireOCL = OCL_FireFieldUpgradedSmall
  PrimaryDamage = 85.0
  PrimaryDamageRadius = 12.0
End

;------------------------------------------------------------------------------
Weapon PredatorMissileWeapon
  PrimaryDamage = 250.0            
  PrimaryDamageRadius = 22.0      
  ScatterRadiusVsInfantry = 10.0     ;When this weapon is used against infantry, it can randomly miss by as much as this distance.
  AttackRange = 250.0
  DamageType = EXPLOSION          ; ignored for projectile weapons
  DeathType = EXPLODED
  WeaponSpeed = 900               ; ignored for projectile weapons
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  ProjectileObject = MissileDefenderMissile
  ProjectileExhaust = MissileDefenderMissileExhaust
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 1000  ; time between shots, msec
  ClipSize = 1            ; how many shots in a Clip (0 == infinite) ; You have to have a clip size as a missile weapon
  ClipReloadTime = 90000    ; how long to reload a Clip, msec
  AutoReloadsClip = RETURN_TO_BASE 
  FireSound = MissileDefenderWeapon
  ProjectileDetonationFX = WeaponFX_RocketBuggyMissileDetonation
  AntiAirborneVehicle         = Yes
  AntiAirborneInfantry        = No
  AntiGround = Yes
  AcceptableAimDelta    = 10.0

  ; note, these only apply to units that aren't the explicit target 
  ; (ie, units that just happen to "get in the way"... projectiles
  ; always collide with the Designated Target, regardless of these flags
  ProjectileCollidesWith = STRUCTURES
End

;------------------------------------------------------------------------------
Weapon NukeSurfaceToSurfaceMissileWeapon
  PrimaryDamage = 999999           
  PrimaryDamageRadius = 700     
  AttackRange = 999999
  DamageType = EXPLOSION
  DeathType = EXPLODED
  WeaponSpeed = 800
  ProjectileObject = NukeSurfacetoSurfaceMissile
  ProjectileExhaust = ScudMissileExhaust
  FireFX = WeaponFX_ScudStormMissile
  FireSound = ScudStormLaunch
  ProjectileDetonationFX = FX_Nuke
  RadiusDamageAffects = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots = 100000 ; in milliseconds.
  ClipSize = 1
  ClipReloadTime = 100000 ; in milliseconds.
  AutoReloadsClip = Yes
  AntiGround = Yes
End

;------------------------------------------------------------------------------
Weapon TankCrewAssaultRifle
  PrimaryDamage           = 2.5
  PrimaryDamageRadius     = 1.0       ; 0 primary radius means "hits only intended victim"
  AttackRange             = 120.0
  DamageType              = SMALL_ARMS
  DeathType               = NORMAL
  WeaponSpeed             = 5000.0          ; dist/sec (huge value == effectively instant)
  ;ProjectileObject        = GenericMachineGunProjectile
  ;ProjectileDetonationFX  = WeaponFX_NewGenericMachineGunImpacts
  FireFX                  = WeaponFX_GenericMachineGunFire
  VeterancyFireFX         = HEROIC WeaponFX_GenericMachineGunFireWithRedTracers
  FireSound               = ComancheWeaponMachineGun;SentryDroneWeapon
  RadiusDamageAffects     = ALLIES ENEMIES NEUTRALS
  DelayBetweenShots       = 200              ; time between shots, msec
  ClipSize                = 15                    ; how many shots in a Clip (0 == infinite)
  ClipReloadTime          = 1200              ; how long to reload a Clip, msec
  WeaponBonus             = DRONE_SPOTTING RATE_OF_FIRE 200%
  WeaponBonus             = DRONE_SPOTTING RANGE        200%
  WeaponBonus             = DRONE_SPOTTING DAMAGE       200%
End
