;------------------------------------------------------------------------------ Object AmericaVehicleHumvee ; *** ART Parameters *** SelectPortrait = SAHummer_L ButtonImage = SAHummer UpgradeCameo1 = Upgrade_AmericaBattleDrone UpgradeCameo2 = Upgrade_AmericaScoutDrone UpgradeCameo3 = Upgrade_AmericaTOWMissile UpgradeCameo4 = Upgrade_AmericaAdvancedTraining UpgradeCameo5 = Upgrade_AmericaHellfireDrone Draw = W3DTruckDraw ModuleTag_01 OkToChangeModelColor = Yes ConditionState = NONE Model = AVHUMMER Turret = Turret ShowSubObject = Turret HideSubObject = TurretUp01 Housecolor03 MuzzleFXUP01 WeaponFireFXBone = PRIMARY Muzzle WeaponMuzzleFlash = PRIMARY MuzzleFX End ConditionState = REALLYDAMAGED Model = AVHUMMER_d Turret = Turret ShowSubObject = Turret HideSubObject = TurretUp01 Housecolor03 MuzzleFXUP01 WeaponFireFXBone = PRIMARY Muzzle WeaponMuzzleFlash = PRIMARY MuzzleFX End ConditionState = WEAPONSET_PLAYER_UPGRADE Model = AVHUMMER Turret = TurretUp01 HideSubObject = Turret MuzzleFX01 ShowSubObject = TurretUp01 Housecolor03 WeaponFireFXBone = PRIMARY MuzzleUp WeaponMuzzleFlash = PRIMARY MuzzleFXUp WeaponFireFXBone = SECONDARY WeaponB WeaponLaunchBone = SECONDARY WeaponB WeaponFireFXBone = TERTIARY WeaponB WeaponLaunchBone = TERTIARY WeaponB End ConditionState = REALLYDAMAGED WEAPONSET_PLAYER_UPGRADE Model = AVHUMMER_d Turret = TurretUp01 HideSubObject = Turret MuzzleFX01 ShowSubObject = TurretUp01 Housecolor03 WeaponFireFXBone = PRIMARY MuzzleUp WeaponMuzzleFlash = PRIMARY MuzzleFXUp WeaponFireFXBone = SECONDARY WeaponB WeaponLaunchBone = SECONDARY WeaponB WeaponFireFXBone = TERTIARY WeaponB WeaponLaunchBone = TERTIARY WeaponB End TrackMarks = EXTireTrack.tga Dust = RocketBuggyDust DirtSpray = RocketBuggyDirtSpray PowerslideSpray = RocketBuggyDirtPowerSlide ; These parameters are only used if the model has a separate suspension, ; and the locomotor has HasSuspension = Yes. LeftFrontTireBone = Tire01 RightFrontTireBone = Tire02 LeftRearTireBone = Tire03 RightRearTireBone = Tire04 TireRotationMultiplier = 0.2 ; this * speed = rotation. PowerslideRotationAddition = 1.25 ; This speed is added to the rotation speed when powersliding. End ; ***DESIGN parameters *** DisplayName = OBJECT:Humvee Side = America EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY HumveeGun End WeaponSet Conditions = PLAYER_UPGRADE Weapon = PRIMARY HumveeGun Weapon = SECONDARY HumveeMissileWeapon Weapon = TERTIARY HumveeMissileWeaponAir PreferredAgainst = TERTIARY AIRCRAFT End ArmorSet Conditions = None Armor = HumveeArmor DamageFX = TruckDamageFX End BuildCost = 700 BuildTime = 10.0 ;in seconds VisionRange = 150 ShroudClearingRange = 320 Prerequisites Object = AmericaWarFactory End ExperienceValue = 50 50 100 150 ;Experience point value at each level ExperienceRequired = 0 100 150 300 ;Experience points needed to gain each level IsTrainable = Yes ;Can gain experience CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaVehicleHumveeCommandSet ; *** AUDIO Parameters *** VoiceSelect = HumveeVoiceSelect VoiceMove = HumveeVoiceMove VoiceGuard = HumveeVoiceMove VoiceAttack = HumveeVoiceAttack VoiceAttackAir = HumveeVoiceAttackTOW SoundMoveStart = HumveeMoveStart SoundMoveStartDamaged = HumveeMoveStart SoundEnter = HumveeEnter SoundExit = HumveeExit UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs ;TurretMoveStart = NoSound VoiceCreate = HumveeVoiceCreate TurretMoveLoop = TurretMoveLoop SoundEject = PilotSoundEject VoiceEject = PilotVoiceEject VoiceCrush = HumveeVoiceCrush ; Required for the W3DTruckDraw module TruckLandingSound = RocketBuggyLand TruckPowerslideSound = RocketBuggyPowerslide VoiceUnload = HumveeVoiceUnload VoiceEnter = HumveeVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS VEHICLE SCORE TRANSPORT Body = ActiveBody ModuleTag_02 MaxHealth = 240.0 InitialHealth = 240.0 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 480 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = TransportAIUpdate ModuleTag_03 Turret TurretTurnRate = 180 RecenterTime = 5000 ; how long to wait during idle before recentering ControlledWeaponSlots = PRIMARY SECONDARY TERTIARY End AutoAcquireEnemiesWhenIdle = Yes MoodAttackCheckRate = 250 End Locomotor = SET_NORMAL HumveeLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 50.0 End Behavior = TransportContain ModuleTag_05 PassengersAllowedToFire = Yes Slots = 5 ; EnterSound = GarrisonEnter ; ExitSound = GarrisonExit DamagePercentToUnits = 100% ;10% AllowInsideKindOf = INFANTRY ExitDelay = 250 NumberOfExitPaths = 3 ; Defaults to 1. Set 0 to not use ExitStart/ExitEnd, set higher than 1 to use ExitStart01-nn/ExitEnd01-nn GoAggressiveOnExit = Yes ; AI Will tell people to set their mood to Aggressive on exiting End Behavior = ObjectCreationUpgrade ModuleTag_06 UpgradeObject = OCL_AmericanBattleDrone TriggeredBy = Upgrade_AmericaBattleDrone ConflictsWith = Upgrade_AmericaScoutDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_07 UpgradeObject = OCL_AmericanScoutDrone TriggeredBy = Upgrade_AmericaScoutDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_14 UpgradeObject = OCL_AmericanHellfireDrone TriggeredBy = Upgrade_AmericaHellfireDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaScoutDrone End Behavior = ProductionUpdate ModuleTag_08 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = WeaponSetUpgrade ModuleTag_09 TriggeredBy = Upgrade_AmericaTOWMissile End Behavior = ExperienceScalarUpgrade ModuleTag_10 TriggeredBy = Upgrade_AmericaAdvancedTraining AddXPScalar = 1.0 ;Increases experience gained by an additional 100% End Behavior = SlowDeathBehavior ModuleTag_11 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 25 DestructionDelay = 1 OCL = INITIAL OCL_InitialHumveeDebris FX = FINAL FX_BattleMasterExplosionOneFinal OCL = FINAL OCL_FinalHumveeDebris End Behavior = DestroyDie ModuleTag_12 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_13 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateCrateDie ModuleTag_CratesChange CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End ; This is commented out per hotlist request 10/9 ML ; Behavior = CreateObjectDie ModuleTag_15 ; DeathTypes = ALL -CRUSHED -SPLATTED ; CreationList = OCL_AmericanRangerDebris01 ; ExemptStatus = HIJACKED ; End Behavior = EjectPilotDie ModuleTag_16 DeathTypes = ALL -CRUSHED -SPLATTED ExemptStatus = HIJACKED ; The following added out per hotlist request 10/9 as above ML VeterancyLevels = ALL -REGULAR ;only vet+ gives pilot GroundCreationList = OCL_EjectPilotOnGround AirCreationList = OCL_EjectPilotViaParachute End Behavior = TransitionDamageFX ModuleTag_17 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = BOX GeometryMajorRadius = 14.0 GeometryMinorRadius = 7.0 GeometryHeight = 11.5 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;---------------------------------------------------------- Object AmericaVehicleTomahawk ; *** ART Parameters *** SelectPortrait = SACTomahawk_L ButtonImage = SACTomahawk UpgradeCameo1 = Upgrade_AmericaScoutDrone UpgradeCameo2 = Upgrade_AmericaBattleDrone UpgradeCameo3 = Upgrade_AmericaAdvancedTraining UpgradeCameo4 = Upgrade_AmericaHellfireDrone ;UpgradeCameo5 = XXX Draw = W3DTankDraw ModuleTag_01 OkToChangeModelColor = Yes ProjectileBoneFeedbackEnabledSlots = PRIMARY ; WeaponLaunchBone will be shown/hidden, not just used for firing offset DefaultConditionState Model = AVTomahawk Turret = TURRET TurretPitch = TURRETEL WeaponLaunchBone = PRIMARY WeaponA WeaponHideShowBone = PRIMARY MISSILE End ConditionState = REALLYDAMAGED Model = AVTomahawk_D End AliasConditionState = RUBBLE TrackMarks = EXTnkTrack.tga End ; ***DESIGN parameters *** DisplayName = OBJECT:Tomahawk Side = America EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) BuildCost = 1200 BuildTime = 20.0 ;in seconds VisionRange = 180 ShroudClearingRange = 200 Prerequisites Object = AmericaWarFactory Object = AmericaStrategyCenter End ExperienceValue = 50 50 100 150 ;Experience point value at each level ExperienceRequired = 0 200 400 800 ;Experience points needed to gain each level IsTrainable = Yes ;Can gain experience WeaponSet Conditions = None Weapon = PRIMARY TomahawkMissileWeapon End ArmorSet Conditions = None Armor = TruckArmor DamageFX = TankDamageFX End CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaVehicleTomahawkCommandSet ; *** AUDIO Parameters *** VoiceSelect = TomahawkVoiceSelect VoiceMove = TomahawkVoiceMove VoiceGuard = TomahawkVoiceMove VoiceAttack = TomahawkVoiceAttack SoundMoveStart = TomahawkMoveStart SoundMoveStartDamaged = TomahawkMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = TomahawkVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoopLoud SoundEject = PilotSoundEject VoiceEject = PilotVoiceEject VoiceCrush = TomahawkVoiceCrush VoiceEnter = TomahawkVoiceMove VoiceBombard = TomahawkVoiceAttack End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE DONT_AUTO_CRUSH_INFANTRY CAN_ATTACK CAN_CAST_REFLECTIONS VEHICLE SCORE Body = ActiveBody ModuleTag_02 MaxHealth = 180.0 InitialHealth = 180.0 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 360 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 60 ; turn rate, in degrees per sec TurretPitchRate = 60 FirePitch = 70 ; Instead of aiming pitchwise at the target, it will aim here AllowsPitch = Yes ControlledWeaponSlots = PRIMARY End AutoAcquireEnemiesWhenIdle = No NotWhileAttacking End Locomotor = SET_NORMAL TomahawkLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 50.0 End Behavior = SlowDeathBehavior ModuleTag_05 DeathTypes = ALL -CRUSHED -SPLATTED DestructionDelay = 500 DestructionDelayVariance = 100 FX = INITIAL FX_GenericTankDeathEffect OCL = MIDPOINT OCL_AmericaVehicleTomahawkDie FX = FINAL FX_AmericaVehicleTomahawkDeathExplosion End Behavior = ObjectCreationUpgrade ModuleTag_06 UpgradeObject = OCL_AmericanBattleDrone TriggeredBy = Upgrade_AmericaBattleDrone ConflictsWith = Upgrade_AmericaScoutDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_07 UpgradeObject = OCL_AmericanScoutDrone TriggeredBy = Upgrade_AmericaScoutDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_15 UpgradeObject = OCL_AmericanHellfireDrone TriggeredBy = Upgrade_AmericaHellfireDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaScoutDrone End Behavior = ProductionUpdate ModuleTag_08 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = ExperienceScalarUpgrade ModuleTag_09 TriggeredBy = Upgrade_AmericaAdvancedTraining AddXPScalar = 1.0 ;Increases experience gained by an additional 100% End Behavior = DestroyDie ModuleTag_10 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_11 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_12 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End ; Behavior = FXListDie ; DeathTypes = ALL -CRUSHED -SPLATTED ; DeathFX = FX_GenericTankDeathEffect ; End ; Behavior = CreateObjectDie ; DeathTypes = ALL -CRUSHED -SPLATTED ; CreationList = OCL_GenericTankDeathEffect ; End Behavior = EjectPilotDie ModuleTag_13 DeathTypes = ALL -CRUSHED -SPLATTED ExemptStatus = HIJACKED VeterancyLevels = ALL -REGULAR ;only vet+ gives pilot GroundCreationList = OCL_EjectPilotOnGround AirCreationList = OCL_EjectPilotViaParachute End Behavior = TransitionDamageFX ModuleTag_14 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = BOX GeometryMajorRadius = 15.0 GeometryMinorRadius = 10.0 GeometryHeight = 10.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ ; Also known as the Ambulance Object AmericaVehicleMedic ; *** ART Parameters *** SelectPortrait = SAAmbulance_L ButtonImage = SAAmbulance UpgradeCameo1 = Upgrade_AmericaBattleDrone UpgradeCameo2 = Upgrade_AmericaScoutDrone UpgradeCameo3 = Upgrade_AmericaHellfireDrone ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTruckDraw ModuleTag_01 ConditionState = NONE Model = AVAmbulance Turret = Turret TurretPitch = TurretEL WeaponFireFXBone = PRIMARY WeaponA WeaponLaunchBone = PRIMARY WeaponA End ConditionState = REALLYDAMAGED Model = AVAmbulance_D Turret = Turret TurretPitch = TurretEL WeaponFireFXBone = PRIMARY WeaponA WeaponLaunchBone = PRIMARY WeaponA End ConditionState = RUBBLE Model = AVAmbulance_D End TrackMarks = EXTireTrack.tga OkToChangeModelColor = Yes Dust = RocketBuggyDust DirtSpray = RocketBuggyDirtSpray PowerslideSpray = RocketBuggyDirtPowerSlide ; These parameters are only used if the model has a separate suspension, ; and the locomotor has HasSuspension = Yes. LeftFrontTireBone = Tire01 RightFrontTireBone = Tire02 LeftRearTireBone = Tire03 RightRearTireBone = Tire04 TireRotationMultiplier = 0.2 ; this * speed = rotation. PowerslideRotationAddition = 2.5 ; This speed is added to the rotation speed when powersliding. End ; ***DESIGN parameters *** DisplayName = OBJECT:Medic Side = America EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet ;*** Fully automated and driven by the CleanupHazardUpdate *** Conditions = None Weapon = PRIMARY AmbulanceCleanHazardWeapon AutoChooseSources = PRIMARY NONE End ArmorSet Conditions = None Armor = ToxinTruckArmor DamageFX = TruckDamageFX End BuildCost = 600 BuildTime = 10.0 ;in seconds VisionRange = 100 ShroudClearingRange = 400 Prerequisites Object = AmericaWarFactory End ExperienceValue = 50 50 50 50 ;Experience point value at each level IsTrainable = No CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaVehicleAmbulanceCommandSet ; *** AUDIO Parameters *** VoiceSelect = AmbulanceVoiceSelect VoiceMove = AmbulanceVoiceMove VoiceGuard = AmbulanceVoiceMove VoiceAttack = AmbulanceVoiceDetox SoundMoveStart = HumveeMoveStart SoundMoveStartDamaged = HumveeMoveStart SoundEnter = HumveeEnter SoundExit = HumveeExit UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = AmbulanceVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop ; Required for the W3DTruckDraw module TruckLandingSound = RocketBuggyLand TruckPowerslideSound = RocketBuggyPowerslide VoiceCrush = AmbulanceVoiceCrush VoiceEnter = AmbulanceVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS VEHICLE SCORE TRANSPORT Body = ActiveBody ModuleTag_02 MaxHealth = 240.0 InitialHealth = 240.0 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 480 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = CleanupHazardUpdate ModuleTag_03 WeaponSlot = PRIMARY ScanRate = 1000 ScanRange = 100.0 ;If this range exceeds the AmbulanceCleanHazardWeapon AttackRange, it'll move! End ;Can be ordered to clean up a larger area with the ability to move around at an extended range. Behavior = CleanupAreaPower ModuleTag_04 SpecialPowerTemplate = SpecialAbilityAmbulanceCleanupArea MaxMoveDistanceFromLocation = 300.0 ;allows the unit to move around while cleaning up InitiateSound = AmbulanceVoiceDetox End Behavior = TransportAIUpdate ModuleTag_05 AutoAcquireEnemiesWhenIdle = No ;CleanupHazardUpdate handles this... Turret TurretTurnRate = 180 TurretPitchRate = 180 AllowsPitch = Yes MinPhysicalPitch = -20 ; If allows pitch, the lowest I can dip down to shoot. defaults to 0 (horizontal) TurretFireAngleSweep = PRIMARY 25 ControlledWeaponSlots = PRIMARY End End Locomotor = SET_NORMAL HumveeLocomotor Behavior = TransportContain ModuleTag_06 Slots = 3 HealthRegen%PerSec = 25 DamagePercentToUnits = 10% AllowInsideKindOf = INFANTRY AllowAlliesInside = Yes AllowNeutralInside = No AllowEnemiesInside = No ExitDelay = 250 NumberOfExitPaths = 3 ; Defaults to 1. Set 0 to not use ExitStart/ExitEnd, set higher than 1 to use ExitStart01-nn/ExitEnd01-nn GoAggressiveOnExit = Yes ; AI Will tell people to set their mood to Aggressive on exiting End Behavior = PhysicsBehavior ModuleTag_07 Mass = 50.0 End Behavior = SlowDeathBehavior ModuleTag_08 DeathTypes = ALL -CRUSHED -SPLATTED DestructionDelay = 0 FX = FINAL FX_GenericTankDeathExplosion OCL = FINAL OCL_FinalAmbulanceDebris End Behavior = ObjectCreationUpgrade ModuleTag_09 UpgradeObject = OCL_AmericanBattleDrone TriggeredBy = Upgrade_AmericaBattleDrone ConflictsWith = Upgrade_AmericaScoutDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_10 UpgradeObject = OCL_AmericanScoutDrone TriggeredBy = Upgrade_AmericaScoutDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_19 UpgradeObject = OCL_AmericanHellfireDrone TriggeredBy = Upgrade_AmericaHellfireDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaScoutDrone End Behavior = ProductionUpdate ModuleTag_11 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = DestroyDie ModuleTag_12 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_13 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_14 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = FXListDie ModuleTag_15 DeathTypes = ALL -CRUSHED -SPLATTED DeathFX = FX_GenericTankDeathEffect End Behavior = CreateCrateDie ModuleTag_16 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = ExperienceScalarUpgrade ModuleTag_17 TriggeredBy = Upgrade_AmericaAdvancedTraining AddXPScalar = 1.0 ;Increases experience gained by an additional 100% End Behavior = TransitionDamageFX ModuleTag_18 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Behavior = AutoHealBehavior ModuleTag_22 HealingAmount = 4 HealingDelay = 1000 ; msec Radius = 100.0f StartsActive = Yes KindOf = INFANTRY End Behavior = AutoHealBehavior ModuleTag_23 HealingAmount = 8 HealingDelay = 1000 ; msec Radius = 100.0f StartsActive = Yes KindOf = VEHICLE ForbiddenKindOf = AIRCRAFT SkipSelfForHealing = Yes End Geometry = BOX GeometryMajorRadius = 14.0 GeometryMinorRadius = 7.0 GeometryHeight = 12.0 ; height set to allow clear clipping of projectile streams GeometryIsSmall = Yes Shadow = SHADOW_VOLUME End ;------------------------------------------------------------------------------ Object AmericaVehicleBattleDrone ; *** ART Parameters *** SelectPortrait = SABattleDrone_L ButtonImage = SABattleDrone UpgradeCameo1 = Upgrade_AmericaDroneArmor ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE ;MAIN CHASSIS Draw = W3DModelDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = AVBATTLEDR Animation = AVBATTLEDR.AVBATTLEDR AnimationMode = LOOP Turret = Turret01 TurretPitch = TurretEL01 WeaponMuzzleFlash = PRIMARY TurretFX01 WeaponFireFXBone = PRIMARY Muzzle01 End ConditionState = REALLYDAMAGED Model = AVBATTLEDR_D Animation = AVBATTLEDR_D.AVBATTLEDR_D AnimationMode = LOOP End End ;EXTENDING ARM (FOR REPAIRING) Draw = W3DModelDraw ModuleTag_02 OkToChangeModelColor = Yes DefaultConditionState Model = AVBATTLEDR_A End ;Unloading the arm (before starting to repair) ConditionState = UNPACKING Animation = AVBATTLEDR_A1.AVBATTLEDR_A1 AnimationMode = ONCE End ;Loading the arm (after reparing complete) ConditionState = PACKING Animation = AVBATTLEDR_A1.AVBATTLEDR_A1 AnimationMode = ONCE_BACKWARDS Flags = START_FRAME_LAST End ;Repair extending animation 1 (using bogus condition states -- doesn't justify making a whole new set) ConditionState = FIRING_B Animation = AVBATTLEDR_A2.AVBATTLEDR_A2 AnimationMode = ONCE End ;Repair retracting animation 1 (using bogus condition states -- doesn't justify making a whole new set) ConditionState = FIRING_C Animation = AVBATTLEDR_A2.AVBATTLEDR_A2 AnimationMode = ONCE_BACKWARDS Flags = START_FRAME_LAST End End ; ***DESIGN parameters *** DisplayName = OBJECT:BattleDrone Side = America EditorSorting = VEHICLE TransportSlotCount = 0 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY BattleDroneMachineGun End ArmorSet Conditions = None Armor = TankArmor DamageFX = SmallTankDamageFX End BuildCost = 200 BuildTime = 5.0 ;in seconds VisionRange = 150 ShroudClearingRange = 150 Prerequisites Object = AmericaWarFactory End ExperienceValue = 10 10 10 10 ;Experience point value at each level IsTrainable = No ; *** AUDIO Parameters *** VoiceSelect = NoSound VoiceMove = NoSound VoiceAttack = NoSound SoundMoveStart = NoSound UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD CAN_CAST_REFLECTIONS VEHICLE SELECTABLE CAN_ATTACK DRONE NO_SELECT Body = ActiveBody ModuleTag_03 MaxHealth = 100.0 InitialHealth = 100.0 End Behavior = AIUpdateInterface ModuleTag_04 Turret TurretTurnRate = 360 // turn rate, in degrees per sec TurretPitchRate = 360 MinPhysicalPitch = -75 ; If allows pitch, the lowest I can dip down to shoot. defaults to 0 (horizontal) AllowsPitch = Yes ControlledWeaponSlots = PRIMARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL BattleDroneLocomotor Locomotor = SET_PANIC BattleDronePanicLocomotor ;used for repairing master (zippy) Behavior = PhysicsBehavior ModuleTag_05 Mass = 50.0 KillWhenRestingOnGround = Yes AllowBouncing = No End Behavior = MaxHealthUpgrade ModuleTag_06 TriggeredBy = Upgrade_AmericaDroneArmor AddMaxHealth = 50.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End Behavior = SlavedUpdate ModuleTag_07 GuardMaxRange = 35 ;How far away from master I'm allowed when master is idle (doesn't wander) GuardWanderRange = 35 ;How far away I'm allowed to wander from master while guarding. AttackRange = 75 ;How far away from master I'm allowed when master is attacking a target. AttackWanderRange = 10 ;How far I'm allowed to wander from target. ScoutRange = 75 ;How far away from master I'm allowed when master is moving. ScoutWanderRange = 10 ;How far I'm allowed to wander from scout point. RepairRange = 8 ;How far I can zip around while repair (only moves when he stops welding) RepairMinAltitude = 18.0 ;My minimum repair hover altitude. RepairMaxAltitude = 24.0 ;My maximum repair hover altitude. RepairRatePerSecond = 5.0 ;How many health points can I repair per second. RepairWhenBelowHealth% = 60 ;How low should my master's health be (in %) before I should prioritize repairing. RepairMinReadyTime = 300 RepairMaxReadyTime = 750 RepairMinWeldTime = 250 RepairMaxWeldTime = 500 RepairWeldingSys = BlueSparks RepairWeldingFXBone = Muzzle02 StayOnSameLayerAsMaster = Yes End Behavior = DestroyDie ModuleTag_08 DeathTypes = ALL End Behavior = CreateObjectDie ModuleTag_09 DeathTypes = ALL CreationList = OCL_AmericaBattleDroneExplode End Behavior = TransitionDamageFX ModuleTag_10 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleDroneDamageTransitionSmall End Behavior = FXListDie ModuleTag_11 DeathTypes = ALL DeathFX = FX_AmericaBattleDroneExplode End Behavior = UpgradeDie ModuleTag_12 ;This frees the object based upgrade for the producer object. DeathTypes = ALL UpgradeToRemove = Upgrade_AmericaBattleDrone ModuleTag_13 End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = CYLINDER GeometryMajorRadius = 5 GeometryMinorRadius = 5 GeometryHeight = 10.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 89 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaVehicleScoutDrone ; *** ART Parameters *** SelectPortrait = SAScout_L ButtonImage = SAScout UpgradeCameo1 = Upgrade_AmericaDroneArmor ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DModelDraw ModuleTag_01 OkToChangeModelColor = Yes ConditionState = NONE Model = AVScoutDr Animation = AVScoutDr.AVScoutDr AnimationMode = LOOP End ConditionState = REALLYDAMAGED Model = AVScoutDr_d Animation = AVScoutDr_d.AVScoutDr_d AnimationMode = LOOP End End ; ***DESIGN parameters *** DisplayName = OBJECT:ScoutDrone Side = America EditorSorting = VEHICLE TransportSlotCount = 0 ;how many "slots" we take in a transport (0 == not transportable) ArmorSet Conditions = None Armor = TankArmor DamageFX = SmallTankDamageFX End BuildCost = 100 BuildTime = 5.0 ;in seconds VisionRange = 150 ShroudClearingRange = 500 IsTrainable = No ;Can gain experience ; *** AUDIO Parameters *** VoiceSelect = NoSound VoiceMove = NoSound VoiceAttack = NoSound SoundMoveStart = NoSound UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD CAN_CAST_REFLECTIONS VEHICLE SELECTABLE DRONE NO_SELECT Body = ActiveBody ModuleTag_02 MaxHealth = 100.0 InitialHealth = 100.0 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 60 // turn rate, in degrees per sec ControlledWeaponSlots = PRIMARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL DroneLocomotor Behavior = StealthDetectorUpdate ModuleTag_04 DetectionRate = 500 ; how often to rescan for stealthed things in my sight (msec) ;DetectionRange = ??? ;Dustin, enable this for independant balancing! CanDetectWhileGarrisoned = No ;Garrisoned means being in a structure that you units can shoot out of. CanDetectWhileContained = No ;Contained means being in a transport or tunnel network. End Behavior = PhysicsBehavior ModuleTag_05 Mass = 50.0 KillWhenRestingOnGround = Yes AllowBouncing = No End Behavior = SlavedUpdate ModuleTag_06 GuardMaxRange = 35 ;How far away from master I'm allowed when master is idle (doesn't wander) GuardWanderRange = 35 ;How far away I'm allowed to wander from master while guarding. AttackRange = 75 ;How far away from master I'm allowed when master is attacking a target. AttackWanderRange = 10 ;How far I'm allowed to wander from target. ScoutRange = 75 ;How far away from master I'm allowed when master is moving. ScoutWanderRange = 10 ;How far I'm allowed to wander from scout point. DistToTargetToGrantRangeBonus = 20 ;How close I have to be to the master's target in order to grant master a range bonus. StayOnSameLayerAsMaster = Yes End Behavior = MaxHealthUpgrade ModuleTag_07 TriggeredBy = Upgrade_AmericaDroneArmor AddMaxHealth = 50.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End Behavior = DestroyDie ModuleTag_08 DeathTypes = ALL End Behavior = CreateObjectDie ModuleTag_09 DeathTypes = ALL CreationList = OCL_AmericaScoutDroneExplode End Behavior = FXListDie ModuleTag_10 DeathTypes = ALL DeathFX = FX_AmericaScoutDroneExplode End Behavior = TransitionDamageFX ModuleTag_11 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleDroneDamageTransitionSmall End Behavior = UpgradeDie ModuleTag_12 ;This frees the object based upgrade for the producer object. DeathTypes = ALL UpgradeToRemove = Upgrade_AmericaScoutDrone ModuleTag_13 End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = CYLINDER GeometryMajorRadius = 5.0 GeometryMinorRadius = 6.0 GeometryHeight = 3.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 89 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaVehicleHellfireDrone ; *** ART Parameters *** SelectPortrait = SAHellfire_L ButtonImage = SAHellfire UpgradeCameo1 = Upgrade_AmericaDroneArmor ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DModelDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = AVHellDrone WeaponLaunchBone = PRIMARY WeaponA End ConditionState = REALLYDAMAGED Model = AVHellDrone_d End End ; ***DESIGN parameters *** DisplayName = OBJECT:HellfireDrone Side = America EditorSorting = VEHICLE TransportSlotCount = 0 ;how many "slots" we take in a transport (0 == not transportable) ArmorSet Conditions = None Armor = TankArmor DamageFX = SmallTankDamageFX End BuildCost = 500 BuildTime = 5.0 ;in seconds VisionRange = 100 ShroudClearingRange = 500 IsTrainable = No ;Can gain experience ; *** AUDIO Parameters *** VoiceSelect = NoSound VoiceMove = NoSound VoiceAttack = NoSound SoundMoveStart = NoSound WeaponSet Conditions = NONE Weapon = PRIMARY HellfireMissileWeapon End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD CAN_CAST_REFLECTIONS VEHICLE SELECTABLE CAN_ATTACK DRONE NO_SELECT Body = ActiveBody ModuleTag_02 MaxHealth = 100.0 InitialHealth = 100.0 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 360 // turn rate, in degrees per sec TurretPitchRate = 360 ControlledWeaponSlots = PRIMARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL HellfireDroneLocomotor Behavior = PhysicsBehavior ModuleTag_05 Mass = 50.0 KillWhenRestingOnGround = Yes AllowBouncing = No End Behavior = SlavedUpdate ModuleTag_06 GuardMaxRange = 35 ;How far away from master I'm allowed when master is idle (doesn't wander) GuardWanderRange = 35 ;How far away I'm allowed to wander from master while guarding. AttackRange = 75 ;How far away from master I'm allowed when master is attacking a target. AttackWanderRange = 10 ;How far I'm allowed to wander from target. ScoutRange = 75 ;How far away from master I'm allowed when master is moving. ScoutWanderRange = 10 ;How far I'm allowed to wander from scout point. StayOnSameLayerAsMaster = Yes End Behavior = MaxHealthUpgrade ModuleTag_07 TriggeredBy = Upgrade_AmericaDroneArmor AddMaxHealth = 50.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End Behavior = DestroyDie ModuleTag_08 DeathTypes = ALL End Behavior = CreateObjectDie ModuleTag_09 DeathTypes = ALL CreationList = OCL_AmericaScoutDroneExplode End Behavior = FXListDie ModuleTag_10 DeathTypes = ALL DeathFX = FX_AmericaScoutDroneExplode End Behavior = TransitionDamageFX ModuleTag_11 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleDroneDamageTransitionSmall End Behavior = UpgradeDie ModuleTag_12 ;This frees the object based upgrade for the producer object. DeathTypes = ALL UpgradeToRemove = Upgrade_AmericaHellfireDrone ModuleTag_13 End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = CYLINDER GeometryMajorRadius = 5.0 GeometryMinorRadius = 6.0 GeometryHeight = 3.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 89 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaVehicleSpyDrone ; *** ART Parameters *** SelectPortrait = SAScout_L ButtonImage = SAScout Draw = W3DModelDraw ModuleTag_01 OkToChangeModelColor = Yes ConditionState = NONE Model = AVSpyDrone Animation = AVSpyDrone.AVSpyDrone AnimationMode = LOOP End ; Damage state waiting for pristine's approval (or may just not need one) ; ConditionState = REALLYDAMAGED ; Model = AVSpyDrone_d ; Animation = AVSpyDrone_d.AVSpyDrone_d ; AnimationMode = LOOP ; End End ; ***DESIGN parameters *** DisplayName = OBJECT:SpyDrone Side = America EditorSorting = VEHICLE TransportSlotCount = 0 ;how many "slots" we take in a transport (0 == not transportable) ArmorSet Conditions = None Armor = AirplaneArmor DamageFX = SmallTankDamageFX End VisionRange = 250 ShroudClearingRange = 0; Dynamic range below IsTrainable = No ; *** AUDIO Parameters *** VoiceSelect = NoSound VoiceMove = NoSound VoiceAttack = NoSound SoundMoveStart = NoSound UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD CAN_CAST_REFLECTIONS VEHICLE SCORE DRONE SELECTABLE INERT NO_SELECT Body = ActiveBody ModuleTag_02 MaxHealth = 200.0 InitialHealth = 200.0 End Behavior = AIUpdateInterface ModuleTag_03 AutoAcquireEnemiesWhenIdle = No End Locomotor = SET_NORMAL SpyDroneLocomtor Behavior = DynamicShroudClearingRangeUpdate ModuleTag_04 FinalVision = 250.0 ChangeInterval = 50 ShrinkDelay = 2000 ShrinkTime = 1000 GrowDelay = 0 GrowTime = 1000 GrowInterval = 10 ; Faster than most GridDecalTemplate Texture = EXGrid Style = SHADOW_ADDITIVE_DECAL OpacityMin = 50% OpacityMax = 100% OpacityThrobTime = 500 Color = R:32 G:64 B:128 A:0 //dim blue, additive End End Behavior = StealthDetectorUpdate ModuleTag_05 DetectionRate = 500 ; how often to rescan for stealthed things in my sight (msec) ;DetectionRange = ??? ;Dustin, enable this for independant balancing! CanDetectWhileGarrisoned = No ;Garrisoned means being in a structure that you units can shoot out of. CanDetectWhileContained = No ;Contained means being in a transport or tunnel network. End Behavior = PhysicsBehavior ModuleTag_06 Mass = 50.0 End Behavior = DestroyDie ModuleTag_07 DeathTypes = ALL End Behavior = CreateObjectDie ModuleTag_08 DeathTypes = ALL CreationList = OCL_AmericaScoutDroneExplode End Behavior = StealthUpdate ModuleTag_09 StealthDelay = 0 ; msec StealthForbiddenConditions = NONE InnateStealth = Yes OrderIdleEnemiesToAttackMeUponReveal = Yes End Behavior = MaxHealthUpgrade ModuleTag_10 TriggeredBy = Upgrade_AmericaDroneArmor AddMaxHealth = 50.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = CYLINDER GeometryMajorRadius = 5.0 GeometryMinorRadius = 6.0 GeometryHeight = 3.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 89 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaTankCrusader ; *** ART Parameters *** SelectPortrait = SACLeopard_L ButtonImage = SACLeopard UpgradeCameo1 = Upgrade_AmericaBattleDrone UpgradeCameo2 = Upgrade_AmericaScoutDrone UpgradeCameo3 = Upgrade_AmericaHellfireDrone UpgradeCameo4 = Upgrade_AmericaAdvancedTraining UpgradeCameo5 = Upgrade_AmericaCompositeArmor Draw = W3DTankDraw ModuleTag_01 DefaultConditionState Model = AVLeopard Turret = Turret WeaponFireFXBone = PRIMARY TurretMS WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY TurretFX WeaponLaunchBone = PRIMARY TurretMS End ConditionState = REALLYDAMAGED Model = AVLeopard_D End ConditionState = RUBBLE Model = AVLeopard_D End TrackMarks = EXTnkTrack.tga TreadAnimationRate = 2.0 ; amount of tread texture to move per second TreadDriveSpeedFraction = 0.3 ; fraction of locomotor speed below which treads stop moving. TreadPivotSpeedFraction = 0.6 ; fraction of locomotor speed below which we allow pivoting. OkToChangeModelColor = Yes End ; ***DESIGN parameters *** DisplayName = OBJECT:Crusader Side = America EditorSorting = VEHICLE TransportSlotCount = 3 WeaponSet Conditions = None Weapon = PRIMARY CrusaderTankGun ; Uncomment this when we want the crusader to have a machine too again ;Weapon = SECONDARY CrusaderMachineGun End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End ;ArmorSet ; Conditions = PLAYER_UPGRADE ; Armor = UpgradedTankArmor ; DamageFX = TankDamageFX ;End BuildCost = 900 BuildTime = 10.0 ;in seconds VisionRange = 150 ShroudClearingRange = 300 Prerequisites Object = AmericaWarFactory End ExperienceValue = 100 100 200 400 ;Experience point value at each level ExperienceRequired = 0 200 300 600 ;Experience points needed to gain each level IsTrainable = Yes ;Can gain experience CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaTankCrusaderCommandSet ; *** AUDIO Parameters *** VoiceSelect = CrusaderTankVoiceSelect VoiceMove = CrusaderTankVoiceMove VoiceGuard = CrusaderTankVoiceMove VoiceAttack = CrusaderTankVoiceAttack SoundMoveStart = CrusaderTankMoveStart SoundMoveStartDamaged = CrusaderTankMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = CrusaderTankVoiceCreate VoiceEnter = CrusaderTankVoiceMove TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop SoundEject = PilotSoundEject VoiceEject = PilotVoiceEject VoiceCrush = CrusaderTankVoiceCrush End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS VEHICLE SCORE Body = ActiveBody ModuleTag_02 MaxHealth = 480 InitialHealth = 480 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 960 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 180 ;60 // turn rate, in degrees per sec ControlledWeaponSlots= PRIMARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL CrusaderLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 50.0 End Behavior = ObjectCreationUpgrade ModuleTag_05 UpgradeObject = OCL_AmericanBattleDrone TriggeredBy = Upgrade_AmericaBattleDrone ConflictsWith = Upgrade_AmericaScoutDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_06 UpgradeObject = OCL_AmericanScoutDrone TriggeredBy = Upgrade_AmericaScoutDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_20 UpgradeObject = OCL_AmericanHellfireDrone TriggeredBy = Upgrade_AmericaHellfireDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaScoutDrone End Behavior = ProductionUpdate ModuleTag_07 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = ExperienceScalarUpgrade ModuleTag_08 TriggeredBy = Upgrade_AmericaAdvancedTraining AddXPScalar = 1.0 ;Increases experience gained by an additional 100% End Behavior = MaxHealthUpgrade ModuleTag_09 TriggeredBy = Upgrade_AmericaCompositeArmor AddMaxHealth = 100.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End ; Turret fly off death Behavior = SlowDeathBehavior ModuleTag_10 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 DestructionDelay = 500 DestructionDelayVariance = 100 FX = INITIAL FX_GenericTankDeathEffect OCL = MIDPOINT OCL_GenericTankDeathEffect FX = FINAL FX_GenericTankDeathExplosion OCL = FINAL OCL_CrusaderTurret End ; Catch fire, and explode death Behavior = SlowDeathBehavior ModuleTag_11 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 DestructionDelay = 2000 DestructionDelayVariance = 300 FX = INITIAL FX_CrusaderCatchFire OCL = FINAL OCL_GenericTankDeathEffect FX = FINAL FX_GenericTankDeathExplosion End Behavior = TransitionDamageFX ModuleTag_12 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmallLightSmokeColumn ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = DestroyDie ModuleTag_13 DeathTypes = NONE +CRUSHED +SPLATTED End ; A crushing defeat Behavior = FXListDie ModuleTag_14 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_15 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = CreateCrateDie ModuleTag_CratesChange CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = EjectPilotDie ModuleTag_17 GroundCreationList = OCL_EjectPilotOnGround AirCreationList = OCL_EjectPilotViaParachute ExemptStatus = HIJACKED VeterancyLevels = ALL -REGULAR ;only vet+ gives pilot End Behavior = MaxHealthUpgrade ModuleTag_18 TriggeredBy = Upgrade_AmericaCompositeArmor AddMaxHealth = 100.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = BOX GeometryMajorRadius = 15.0 GeometryMinorRadius = 10.0 GeometryHeight = 10.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ ;USA Construction Dozer or USDozer Object AmericaVehicleDozer ; *** ART Parameters *** SelectPortrait = SACDozer_L ButtonImage = SACDozer ;UpgradeCameo1 = NONE ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTruckDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = AVCONSTDOZ_A ParticleSysBone = EXHAUSTFX01 DozerSmokeLight WaitForStateToFinishIfPossible = TRANS_DIGGING End ConditionState = PREATTACK_A Animation = AVCONSTDOZ_A.AVCONSTDOZ_A AnimationMode = ONCE ParticleSysBone = EXHAUSTFX01 DozerSmokeHeavy ParticleSysBone = DIRTFX01 DozerDirtFall ;gush of dirt TransitionKey = TRANS_DIGGING End ConditionState = MOVING ParticleSysBone = EXHAUSTFX01 DozerSmokeHeavy WaitForStateToFinishIfPossible = TRANS_DIGGING End ConditionState = REALLYDAMAGED RUBBLE Model = AVCONSTDOZ_AD ParticleSysBone = EXHAUSTFX01 DozerSmokeHeavy WaitForStateToFinishIfPossible = TRANS_DIGGING_DAMAGED End ConditionState = PREATTACK_A REALLYDAMAGED RUBBLE Model = AVCONSTDOZ_AD Animation = AVCONSTDOZ_AD.AVCONSTDOZ_AD AnimationMode = ONCE ParticleSysBone = EXHAUSTFX01 DozerSmokeHeavy TransitionKey = TRANS_DIGGING_DAMAGED End ConditionState = MOVING REALLYDAMAGED RUBBLE Model = AVCONSTDOZ_AD ParticleSysBone = EXHAUSTFX01 DozerSmokeHeavy WaitForStateToFinishIfPossible = TRANS_DIGGING_DAMAGED End TrackMarks = EXTireTrack2.tga Dust = RocketBuggyDust DirtSpray = RocketBuggyDirtSpray ; These parameters are only used if the model has a separate suspension, ; and the locomotor has HasSuspension = Yes. LeftFrontTireBone = TIRE01 RightFrontTireBone = TIRE02 LeftRearTireBone = TIRE03 RightRearTireBone = TIRE04 TireRotationMultiplier = 0.2 ; this * speed = rotation. PowerslideRotationAddition = 0 ; This vehicle doesn't powerslide. ParticlesAttachedToAnimatedBones = Yes End ; ***DESIGN parameters *** DisplayName = OBJECT:Dozer Side = America EditorSorting = VEHICLE TransportSlotCount = 5 ;how many "slots" we take in a transport (0 == not transportable) BuildCost = 1000 BuildTime = 5.0 ; in seconds VisionRange = 200 ShroudClearingRange = 200 WeaponSet Conditions = None Weapon = PRIMARY None End WeaponSet Conditions = MINE_CLEARING_DETAIL Weapon = PRIMARY DozerMineDisarmingWeapon End ArmorSet Conditions = None Armor = DozerArmor ;Special Explosion-Proof Armor DamageFX = TankDamageFX End CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaDozerCommandSet ; *** AUDIO Parameters *** VoiceSelect = DozerUSAVoiceSelect VoiceMove = DozerUSAVoiceMove VoiceGuard = DozerUSAVoiceMove VoiceTaskComplete = DozerUSAVoiceBuildComplete SoundMoveStart = DozerUSAMoveStart SoundMoveStartDamaged = DozerUSAMoveStart UnitSpecificSounds VoiceCreate = DozerUSAVoiceCreate VoiceNoBuild = DozerUSAVoiceBuildNot VoiceCrush = DozerUSAVoiceCrush VoiceRepair = DozerUSAVoiceRepair VoiceDisarm = DozerUSAVoiceClearMine TruckLandingSound = NoSound TruckPowerslideSound = NoSound VoiceEnter = DozerUSAVoiceMove VoiceBuildResponse = DozerUSAVoiceBuild End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD VEHICLE SCORE SELECTABLE CAN_CAST_REFLECTIONS DOZER Body = ActiveBody ModuleTag_02 MaxHealth = 250.0 InitialHealth = 250.0 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 500 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = DozerAIUpdate ModuleTag_03 RepairHealthPercentPerSecond = 2% ; % of max health to repair each second BoredTime = 5000 ; in milliseconds BoredRange = 150 ; when bored, we look this far away to do something ; the only "enemies" that workers can acquire are mines, to be disarmed... AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL AmericaVehicleDozerLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 75.0 End Behavior = StealthDetectorUpdate ModuleTag_05 DetectionRate = 500 ; how often to rescan for stealthed things in my sight (msec) ;DetectionRange = ??? ;Dustin, enable this for independant balancing! CanDetectWhileGarrisoned = No ;Garrisoned means being in a structure that you units can shoot out of. CanDetectWhileContained = No ;Contained means being in a transport or tunnel network. ExtraRequiredKindOf = MINE ; we can only detect MINES, not other stealthed things End Behavior = TransitionDamageFX ModuleTag_06 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End ; Catch fire, and explode death Behavior = SlowDeathBehavior ModuleTag_07 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 100 DestructionDelay = 1500 DestructionDelayVariance = 600 FX = INITIAL FX_CrusaderCatchFire OCL = FINAL OCL_AmericaDozerExplode FX = FINAL FX_BattleMasterExplosionOneFinal End Behavior = CreateCrateDie ModuleTag_CratesChange CrateData = SalvageCrateData End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End ;;;;;;;; ClientUpdate = AnimatedParticleSysBoneClientUpdate ModuleTag_22 ;;;;;;;; End Behavior = FXListDie ModuleTag_23 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = DestroyDie ModuleTag_24 DeathTypes = NONE +CRUSHED +SPLATTED End Geometry = BOX GeometryMajorRadius = 15.0 GeometryMinorRadius = 10.0 GeometryHeight = 15.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaTankPaladin ; *** ART Parameters *** SelectPortrait = SAPaladin_L ButtonImage = SAPaladin UpgradeCameo1 = Upgrade_AmericaBattleDrone UpgradeCameo2 = Upgrade_AmericaScoutDrone UpgradeCameo3 = Upgrade_AmericaAdvancedTraining UpgradeCameo4 = Upgrade_AmericaCompositeArmor UpgradeCameo5 = Upgrade_AmericaHallfireDrone Draw = W3DTankDraw ModuleTag_01 ExtraPublicBone = Laser ConditionState = NONE Model = AVPaladin Turret = Turret01 WeaponFireFXBone = PRIMARY TurretMS WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY TurretFX WeaponLaunchBone = PRIMARY TurretMS End ConditionState = REALLYDAMAGED Model = AVPaladin_D Turret = Turret01 WeaponFireFXBone = PRIMARY TurretMS WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY TurretFX WeaponLaunchBone = PRIMARY TurretMS End ConditionState = RUBBLE Model = AVPaladin_D Turret = Turret01 WeaponFireFXBone = PRIMARY TurretMS WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY TurretFX WeaponLaunchBone = PRIMARY TurretMS End TrackMarks = EXTnkTrack.tga TreadAnimationRate = 2.0 ; amount of tread texture to move per second TreadDriveSpeedFraction = 0.3 ; fraction of locomotor speed below which treads stop moving. TreadPivotSpeedFraction = 0.6 ; fraction of locomotor speed below which we allow pivoting. OkToChangeModelColor = Yes End ; ***DESIGN parameters *** DisplayName = OBJECT:Paladin Side = America EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY PaladinTankGun End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End ;ArmorSet ; Conditions = PLAYER_UPGRADE ; Armor = UpgradedTankArmor ; DamageFX = TankDamageFX ;End BuildCost = 1100 BuildTime = 12.0 ;in seconds VisionRange = 150 ShroudClearingRange = 300 Prerequisites Object = AmericaWarFactory Science = SCIENCE_PaladinTank End ExperienceValue = 100 100 200 400 ;Experience point value at each level ExperienceRequired = 0 200 300 600 ;Experience points needed to gain each level IsTrainable = Yes ;Can gain experience CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaTankPaladinCommandSet ; *** AUDIO Parameters *** VoiceSelect = PaladinTankVoiceSelect VoiceMove = PaladinTankVoiceMove VoiceGuard = PaladinTankVoiceMove VoiceAttack = PaladinTankVoiceAttack SoundMoveStart = PaladinTankMoveStart SoundMoveStartDamaged = PaladinTankMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = PaladinTankVoiceCreate TurretMoveLoop = TurretMoveLoop SoundEject = PilotSoundEject VoiceEject = PilotVoiceEject VoiceCrush = PaladinTankVoiceCrush VoiceEnter = PaladinTankVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS VEHICLE SCORE Body = ActiveBody ModuleTag_02 MaxHealth = 500.0 InitialHealth = 500.0 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 1000 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 180 ;60 // turn rate, in degrees per sec ControlledWeaponSlots = PRIMARY End ;AltTurret ; TurretTurnRate = 9000; ; ControlledWeaponSlots = SECONDARY ;End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL CrusaderLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 50.0 End ; Turret fly off death Behavior = SlowDeathBehavior ModuleTag_05 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 ; ModifierBonusPerOverkillPercent = 30% ; negative means less likely to pick this in the face of much damage, positive means more likely DestructionDelay = 500 DestructionDelayVariance = 100 FX = INITIAL FX_GenericTankDeathEffect FX = FINAL FX_GenericTankDeathExplosion OCL = FINAL OCL_PaladinTankDeathEffect End ; Catch fire, and explode death Behavior = SlowDeathBehavior ModuleTag_06 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 DestructionDelay = 2000 DestructionDelayVariance = 300 FX = INITIAL FX_CrusaderCatchFire OCL = FINAL OCL_PaladinTankDeathEffect FX = FINAL FX_GenericTankDeathExplosion End Behavior = PointDefenseLaserUpdate ModuleTag_07 WeaponTemplate = PaladinPointDefenseLaser PrimaryTargetTypes = BALLISTIC_MISSILE SMALL_MISSILE SecondaryTargetTypes = INFANTRY ScanRate = 500 ScanRange = 120.0 PredictTargetVelocityFactor = 3.0 End Behavior = ObjectCreationUpgrade ModuleTag_08 UpgradeObject = OCL_AmericanBattleDrone TriggeredBy = Upgrade_AmericaBattleDrone ConflictsWith = Upgrade_AmericaScoutDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_09 UpgradeObject = OCL_AmericanScoutDrone TriggeredBy = Upgrade_AmericaScoutDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_19 UpgradeObject = OCL_AmericanHellfireDrone TriggeredBy = Upgrade_AmericaHellfireDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaScoutDrone End Upgrade_AmericaHallfireDrone Behavior = ProductionUpdate ModuleTag_10 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = ExperienceScalarUpgrade ModuleTag_11 TriggeredBy = Upgrade_AmericaAdvancedTraining AddXPScalar = 1.0 ;Increases experience gained by an additional 100% End Behavior = TransitionDamageFX ModuleTag_12 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = FXListDie ModuleTag_13 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_14 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = DestroyDie ModuleTag_15 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = CreateCrateDie ModuleTag_16 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = EjectPilotDie ModuleTag_17 DeathTypes = ALL -CRUSHED -SPLATTED ExemptStatus = HIJACKED GroundCreationList = OCL_EjectPilotOnGround AirCreationList = OCL_EjectPilotViaParachute VeterancyLevels = ALL -REGULAR ;only vet+ gives pilot End Behavior = MaxHealthUpgrade ModuleTag_18 TriggeredBy = Upgrade_AmericaCompositeArmor AddMaxHealth = 100.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = BOX GeometryMajorRadius = 15.0 GeometryMinorRadius = 10.0 GeometryHeight = 10.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ ;Sentry Drone Object AmericaVehicleSentryDrone ; *** ART Parameters *** SelectPortrait = SAsentry_L ButtonImage = SAsentry UpgradeCameo1 = Upgrade_AmericaSentryDroneGun ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 InitialRecoilSpeed = 10 MaxRecoilDistance = 1.5 RecoilSettleSpeed = 3 OkToChangeModelColor = Yes DefaultConditionState Model = AVSENTRY Animation = AVSENTRY.AVSENTRY AnimationMode = LOOP Turret = TURRET01 HideSubObject = TURRETUP09 ;Hide controlled turret WeaponFireFXBone = PRIMARY TurretFX WeaponMuzzleFlash = PRIMARY TurretFX WeaponRecoilBone = PRIMARY TurretUp End ConditionState = REALLYDAMAGED Turret = TURRET01 Model = AVSENTRY_D Animation = AVSENTRY_D.AVSENTRY_D AnimationMode = LOOP HideSubObject = TURRETUP09 ;Hide controlled turret End ConditionState = RUBBLE Model = AVSENTRY_D1 HideSubObject = TURRETUP09 ;Hide controlled turret End AliasConditionState = RUBBLE WEAPONSET_PLAYER_UPGRADE ConditionState = WEAPONSET_PLAYER_UPGRADE Model = AVSENTRY Animation = AVSENTRY.AVSENTRY AnimationMode = LOOP ShowSubObject = TURRETUP09 End ConditionState = WEAPONSET_PLAYER_UPGRADE REALLYDAMAGED Model = AVSENTRY_D Animation = AVSENTRY_D.AVSENTRY_D AnimationMode = LOOP ShowSubObject = TURRETUP09 End TrackMarks = EXTnkTrack.tga TreadDebrisLeft = SentryDroneTrackDebrisDirtLeft TreadDebrisRight = SentryDroneTrackDebrisDirtRight TreadAnimationRate = 4.0 ; amount of tread texture to move per second End ; ***DESIGN parameters *** DisplayName = OBJECT:SentryDrone Side = America EditorSorting = VEHICLE TransportSlotCount = 1 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY None End WeaponSet Conditions = PLAYER_UPGRADE Weapon = PRIMARY SentryDroneGun End ArmorSet Conditions = None Armor = SentryDroneArmor DamageFX = TruckDamageFX End BuildCost = 800 BuildTime = 10.0 ;in seconds VisionRange = 200 ShroudClearingRange = 350 Prerequisites Object = AmericaWarFactory End ExperienceValue = 50 50 100 150 ;Experience point value at each level ExperienceRequired = 0 100 150 300 ;Experience points needed to gain each level IsTrainable = No ;Can gain experience CrusherLevel = 0 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaVehicleSentryDroneCommandSet ; *** AUDIO Parameters *** VoiceSelect = SentryDroneVoiceSelect VoiceMove = SentryDroneVoiceMove VoiceGuard = SentryDroneVoiceMove VoiceAttack = SentryDroneVoiceMove SoundMoveStart = SentryDroneMoveStart SoundMoveStartDamaged = NoSound UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = NoSound TurretMoveStart = NoSound TurretMoveLoop = NoSound VoiceEnter = NoSound Deploy = NoSound Undeploy = NoSound End Behavior = WeaponSetUpgrade ModuleTag_03 TriggeredBy = Upgrade_AmericaSentryDroneGun End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK CAN_CAST_REFLECTIONS VEHICLE SCORE ATTACK_NEEDS_LINE_OF_SIGHT DRONE Body = ActiveBody ModuleTag_02 MaxHealth = 300.0 InitialHealth = 300.0 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 480 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = DeployStyleAIUpdate ModuleTag_04 Turret TurretTurnRate = 180 TurretPitchRate = 180 FirePitch = 0 ; Instead of aiming pitchwise at the target, it will aim here AllowsPitch = No RecenterTime = 1000 ; how long to wait during idle before recentering ControlledWeaponSlots = PRIMARY NaturalTurretAngle = 0 InitiallyDisabled = No MinIdleScanInterval = 250 ; in milliseconds MaxIdleScanInterval = 250 ; in milliseconds MinIdleScanAngle = 0 ; in degrees off the natural turret angle MaxIdleScanAngle = 360 ; in degrees off the natural turret angle End AutoAcquireEnemiesWhenIdle = Yes Stealthed ; Means "Yes when idle, even if I am stealthed" PackTime = 1000 UnpackTime = 1000 TurretsFunctionOnlyWhenDeployed = Yes TurretsMustCenterBeforePacking = Yes End Locomotor = SET_NORMAL SentryLocomotor Behavior = PhysicsBehavior ModuleTag_05 Mass = 50.0 End Behavior = StealthUpdate ModuleTag_06 StealthDelay = 2000 ; msec StealthForbiddenConditions = FIRING_PRIMARY MOVING HintDetectableConditions = IS_FIRING_WEAPON FriendlyOpacityMin = 50.0% FriendlyOpacityMax = 100.0% InnateStealth = Yes OrderIdleEnemiesToAttackMeUponReveal = Yes End Behavior = SlowDeathBehavior ModuleTag_07 DeathTypes = ALL -CRUSHED -SPLATTED DestructionDelay = 500 DestructionDelayVariance = 100 FX = INITIAL FX_GenericTankDeathEffect OCL = MIDPOINT OCL_AmericaVehicleSentryDroneDie FX = FINAL FX_AmericaVehicleTomahawkDeathExplosion End Behavior = DestroyDie ModuleTag_08 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_09 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateCrateDie ModuleTag_CratesChange CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = TransitionDamageFX ModuleTag_10 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = FlammableUpdate ModuleTag_11 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Behavior = StealthDetectorUpdate ModuleTag_12 DetectionRate = 900 ; how often to rescan for stealthed things in my sight (msec) DetectionRange = 225 ;Dustin, enable this for independant balancing! End Geometry = BOX GeometryMajorRadius = 9.0 GeometryMinorRadius = 7.0 GeometryHeight = 11.5 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaTankAvengerLaserTurret ; Seperate turret object so it can attack independantly ; *** ART Parameters *** SelectPortrait = SNPropSpeaker_L ButtonImage = SNPropSpeaker UpgradeCameo1 = Upgrade_Nationalism UpgradeCameo2 = Upgrade_ChinaUraniumShells UpgradeCameo3 = Upgrade_ChinaNuclearTanks ;UpgradeCameo4 = NONE UpgradeCameo5 = Upgrade_ChinaOverlordPropagandaTower Draw = W3DDependencyModelDraw ModuleTag_01 OkToChangeModelColor = Yes ExtraPublicBone = TurretFX01 ExtraPublicBone = TurretFX02 ExtraPublicBone = TURRET01 ExtraPublicBone = TURRETEL ExtraPublicBone = TURRETEL01 AttachToBoneInContainer = FIREPOINT01 DefaultConditionState Model = AVAVNGER_G Turret = TURRET01 TurretPitch = TURRETEL01 End ConditionState = REALLYDAMAGED Model = AVAVNGER_GD Turret = TURRET01 TurretPitch = TURRETEL01 End End PlacementViewAngle = -45 ; ***DESIGN parameters *** Side = America EditorSorting = SYSTEM TransportSlotCount = 1 WeaponSet Conditions = None Weapon = PRIMARY AvengerAirLaserOne Weapon = SECONDARY AvengerAirLaserTwo End ArmorSet Conditions = None Armor = InvulnerableAllArmor ; We can't be hurt on the field. We share damage from the Avenger with his damage module End VisionRange = 200 ; *** AUDIO Parameters *** UnitSpecificSounds TurretMoveStart = NoSound TurretMoveLoop = NoSound ;TurretMoveLoop End ; *** ENGINEERING Parameters *** KindOf = PRELOAD PORTABLE_STRUCTURE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CLICK_THROUGH IGNORED_IN_GUI Body = StructureBody ModuleTag_02 MaxHealth = 100.0 InitialHealth = 100.0 End Behavior = AIUpdateInterface ModuleTag_03 Turret ControlledWeaponSlots = PRIMARY SECONDARY TurretTurnRate = 180 // turn rate, in degrees per sec TurretPitchRate = 180 AllowsPitch = Yes NaturalTurretPitch = 45 End AutoAcquireEnemiesWhenIdle = Yes MoodAttackCheckRate = 500 ; default is 2000 End Behavior = DestroyDie ModuleTag_05 ; End Geometry = BOX GeometryMajorRadius = 6.0 GeometryMinorRadius = 6.0 GeometryHeight = 10.0 GeometryIsSmall = No Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaTankAvenger ; *** ART Parameters *** SelectPortrait = SAAvnger_L ButtonImage = SAAvnger UpgradeCameo1 = Upgrade_AmericaBattleDrone UpgradeCameo2 = Upgrade_AmericaScoutDrone UpgradeCameo3 = Upgrade_AmericaHellfireDrone UpgradeCameo4 = Upgrade_AmericaAdvancedTraining UpgradeCameo5 = Upgrade_AmericaCompositeArmor Draw = W3DOverlordTruckDraw ModuleTag_01 OkToChangeModelColor = Yes ExtraPublicBone = TurretFX03 ExtraPublicBone = LazerSpot01 ExtraPublicBone = LazerSpot02 DefaultConditionState Model = AVAVNGER End ConditionState = REALLYDAMAGED Model = AVAVNGER_D End ConditionState = RUBBLE Model = AVAVNGER_D1 End Dust = RocketBuggyDust DirtSpray = RocketBuggyDirtSpray PowerslideSpray = RocketBuggyDirtPowerSlide ; These parameters are only used if the model has a separate suspension, ; and the locomotor has HasSuspension = Yes. LeftFrontTireBone = Tire01 RightFrontTireBone = Tire02 LeftRearTireBone = Tire03 RightRearTireBone = Tire04 TireRotationMultiplier = 0.2 ; this * speed = rotation. PowerslideRotationAddition = 0.0 ; This speed is added to the rotation speed when powersliding. End ; ***DESIGN parameters *** DisplayName = OBJECT:Avenger Side = America EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY AvengerTargetDesignator End ArmorSet Conditions = None Armor = AntiAirVehicle DamageFX = TankDamageFX End BuildCost = 2000 BuildTime = 10.0 ;in seconds VisionRange = 150 ShroudClearingRange = 300 Prerequisites Object = AmericaWarFactory Object = AmericaStrategyCenter End ExperienceValue = 100 100 200 400 ;Experience point value at each level ExperienceRequired = 0 200 300 600 ;Experience points needed to gain each level IsTrainable = Yes CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaTankAvengerCommandSet ; *** AUDIO Parameters *** VoiceSelect = AvengerVoiceSelect VoiceMove = AvengerVoiceMove VoiceGuard = AvengerVoiceMove VoiceAttack = AvengerVoicePaint VoiceAttackAir = AvengerVoiceAttack SoundMoveStart = HumveeMoveStart SoundMoveStartDamaged = HumveeMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = AvengerVoiceCreate TurretMoveLoop = NoSound SoundEject = PilotSoundEject VoiceEject = PilotVoiceEject VoiceCrush = NoSound VoiceEnter = AvengerVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS VEHICLE SCORE CANNOT_RETALIATE Body = ActiveBody ModuleTag_02 MaxHealth = 300.0 InitialHealth = 300.0 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 1000 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL AvengerLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 50.0 End ; Turret fly off death Behavior = SlowDeathBehavior ModuleTag_05 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 ; ModifierBonusPerOverkillPercent = 30% ; negative means less likely to pick this in the face of much damage, positive means more likely DestructionDelay = 500 DestructionDelayVariance = 100 FX = INITIAL FX_GenericTankDeathEffect FX = FINAL FX_GenericTankDeathExplosion OCL = FINAL OCL_AvengerTankDeathEffect End ; Catch fire, and explode death Behavior = SlowDeathBehavior ModuleTag_06 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 DestructionDelay = 2000 DestructionDelayVariance = 300 FX = INITIAL FX_CrusaderCatchFire FX = FINAL FX_GenericTankDeathExplosion OCL = FINAL OCL_AvengerTankDeathEffect End Behavior = PointDefenseLaserUpdate ModuleTag_Laser_One WeaponTemplate = AvengerPointDefenseLaserOne PrimaryTargetTypes = BALLISTIC_MISSILE SMALL_MISSILE ScanRate = 0 ScanRange = 200.0 PredictTargetVelocityFactor = 1.0 End ; Behavior = PointDefenseLaserUpdate ModuleTag_Laser_Two ; WeaponTemplate = AvengerPointDefenseLaserTwo ; PrimaryTargetTypes = BALLISTIC_MISSILE SMALL_MISSILE ; ScanRate = 100 ; ScanRange = 200.0 ; PredictTargetVelocityFactor = 1.0 ; End Behavior = OverlordContain ModuleTag_OverlordContain Slots = 1 DamagePercentToUnits = 100% AllowInsideKindOf = PORTABLE_STRUCTURE PassengersAllowedToFire = Yes PayloadTemplateName = AmericaTankAvengerLaserTurret ExperienceSinkForRider = Yes ; I get the Exp for things my turret friend kills End Behavior = ObjectCreationUpgrade ModuleTag_08 UpgradeObject = OCL_AmericanBattleDrone TriggeredBy = Upgrade_AmericaBattleDrone ConflictsWith = Upgrade_AmericaScoutDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_09 UpgradeObject = OCL_AmericanScoutDrone TriggeredBy = Upgrade_AmericaScoutDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_19 UpgradeObject = OCL_AmericanHellfireDrone TriggeredBy = Upgrade_AmericaHellfireDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaScoutDrone End Behavior = ProductionUpdate ModuleTag_10 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = ExperienceScalarUpgrade ModuleTag_11 TriggeredBy = Upgrade_AmericaAdvancedTraining AddXPScalar = 1.0 ;Increases experience gained by an additional 100% End Behavior = TransitionDamageFX ModuleTag_12 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = FXListDie ModuleTag_13 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_14 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = DestroyDie ModuleTag_15 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = CreateCrateDie ModuleTag_16 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = EjectPilotDie ModuleTag_17 DeathTypes = ALL -CRUSHED -SPLATTED ExemptStatus = HIJACKED GroundCreationList = OCL_EjectPilotOnGround AirCreationList = OCL_EjectPilotViaParachute VeterancyLevels = ALL -REGULAR ;only vet+ gives pilot End Behavior = FlammableUpdate ModuleTag_22 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Geometry = BOX GeometryMajorRadius = 15.0 GeometryMinorRadius = 10.0 GeometryHeight = 10.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object AmericaTankMicrowave ; *** ART Parameters *** SelectPortrait = SAThunderBolt_L ButtonImage = SAThunderBolt UpgradeCameo1 = Upgrade_AmericaBattleDrone UpgradeCameo2 = Upgrade_AmericaScoutDrone UpgradeCameo3 = Upgrade_AmericaHellfireDrone UpgradeCameo4 = Upgrade_AmericaAdvancedTraining UpgradeCameo5 = Upgrade_AmericaCompositeArmor Draw = W3DTankDraw ModuleTag_01 ExtraPublicBone = WEAPON02 OkToChangeModelColor = Yes ConditionState = NONE Model = AVTHUNDRBLT ParticleSysBone = PROJECTORGLOW09 MicrowaveLenzflare ParticleSysBone = NONE MicrowaveRotisserie End ConditionState = USING_WEAPON_A USING_WEAPON_B USING_WEAPON_C Model = AVTHUNDRBLT End ConditionState = REALLYDAMAGED RUBBLE Model = AVTHUNDRBLT_D ParticleSysBone = PROJECTORGLOW09 MicrowaveLenzflare ParticleSysBone = NONE MicrowaveRotisserie End ConditionState = REALLYDAMAGED RUBBLE USING_WEAPON_A USING_WEAPON_B USING_WEAPON_C Model = AVTHUNDRBLT_D End TrackMarks = EXTnkTrack.tga TreadAnimationRate = 4.0 ; amount of tread texture to move per second End ; ***DESIGN parameters *** DisplayName = OBJECT:Microwave Side = America EditorSorting = VEHICLE TransportSlotCount = 3 ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End WeaponSet Conditions = None ; Weapon = PRIMARY MicrowaveTankVehicleDisabler Weapon = PRIMARY MicrowaveTankBuildingDisabler ;SECONDARY MicrowaveTankBuildingDisabler Weapon = SECONDARY MicrowaveTankBuildingClearer ;TERTIARY MicrowaveTankBuildingClearer End BuildCost = 800 BuildTime = 10.0 ;in seconds VisionRange = 200 ShroudClearingRange = 300 Prerequisites Object = AmericaWarFactory Object = AmericaStrategyCenter End ExperienceValue = 100 100 200 400 ;Experience point value at each level ExperienceRequired = 0 200 300 600 ;Experience points needed to gain each level IsTrainable = Yes ;Can gain experience CrusherLevel = 2 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = AmericaTankMicrowaveCommandSet ; *** AUDIO Parameters *** VoiceSelect = MicrowaveTankVoiceSelect VoiceMove = MicrowaveTankVoiceMove VoiceGuard = MicrowaveTankVoiceMove VoiceAttack = MicrowaveTankVoiceAttack SoundMoveStart = MicrowaveTankMoveStart SoundMoveStartDamaged = MicrowaveTankMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = MicrowaveTankVoiceCreate VoiceEnter = MicrowaveTankVoiceMove SoundEject = PilotSoundEject VoiceEject = PilotVoiceEject VoiceCrush = MicrowaveTankVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS VEHICLE SCORE CANNOT_RETALIATE Body = ActiveBody ModuleTag_02 MaxHealth = 480 InitialHealth = 480 ; Subdual damage "Subdues" you (reaction defined by BodyModule) when it passes your max health. ; The cap limits how extra-subdued you can be, and the other numbers detemine how fast it drains away on its own. SubdualDamageCap = 960 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL CrusaderLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 50.0 End ; Turret fly off death Behavior = SlowDeathBehavior ModuleTag_10 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 DestructionDelay = 500 DestructionDelayVariance = 100 FX = INITIAL FX_GenericTankDeathEffect OCL = MIDPOINT OCL_MicrowaveTankDeath FX = FINAL FX_GenericTankDeathExplosion End Behavior = TransitionDamageFX ModuleTag_12 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmallLightSmokeColumn ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = DestroyDie ModuleTag_13 DeathTypes = NONE +CRUSHED +SPLATTED End ; A crushing defeat Behavior = FXListDie ModuleTag_14 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_15 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_MicrowaveTankDeath_CrushEffect End Behavior = CreateCrateDie ModuleTag_CratesChange CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = EjectPilotDie ModuleTag_17 GroundCreationList = OCL_EjectPilotOnGround AirCreationList = OCL_EjectPilotViaParachute ExemptStatus = HIJACKED VeterancyLevels = ALL -REGULAR ;only vet+ gives pilot End Behavior = MaxHealthUpgrade ModuleTag_18 TriggeredBy = Upgrade_AmericaCompositeArmor AddMaxHealth = 100.0 ChangeType = ADD_CURRENT_HEALTH_TOO ;Choices are PRESERVE_RATIO, ADD_CURRENT_HEALTH_TOO, and SAME_CURRENTHEALTH End Behavior = ExperienceScalarUpgrade ModuleTag_Upgrade01 TriggeredBy = Upgrade_AmericaAdvancedTraining AddXPScalar = 1.0 ;Increases experience gained by an additional 100% End Behavior = ObjectCreationUpgrade ModuleTag_Upgrade02 UpgradeObject = OCL_AmericanBattleDrone TriggeredBy = Upgrade_AmericaBattleDrone ConflictsWith = Upgrade_AmericaScoutDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_Upgrade03 UpgradeObject = OCL_AmericanScoutDrone TriggeredBy = Upgrade_AmericaScoutDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaHellfireDrone End Behavior = ObjectCreationUpgrade ModuleTag_Upgrade04 UpgradeObject = OCL_AmericanHellfireDrone TriggeredBy = Upgrade_AmericaHellfireDrone ConflictsWith = Upgrade_AmericaBattleDrone Upgrade_AmericaScoutDrone End Behavior = ProductionUpdate ModuleTag_Prod01 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = FlammableUpdate ModuleTag_21 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Behavior = FireWeaponUpdate ModuleTag_22 Weapon = MicrowaveTankEmitterWeapon ExclusiveWeaponDelay = 1000 ; If we fire a real weapon, we turn this module off for this long End Behavior = CommandButtonHuntUpdate ModuleTag_24 ; allows use of command button hunt script with this unit. End Geometry = BOX GeometryMajorRadius = 15.0 GeometryMinorRadius = 10.0 GeometryHeight = 10.0 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End