;------------------------------------------------------------------------------ Object ChinaTankBattleMaster ; *** ART Parameters *** SelectPortrait = SNBattlemaster_L ButtonImage = SNBattlemaster UpgradeCameo1 = Upgrade_Nationalism UpgradeCameo2 = Upgrade_ChinaUraniumShells UpgradeCameo3 = Upgrade_ChinaNuclearTanks ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = NVBtMstr Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle End ConditionState = REALLYDAMAGED Model = NVBtMstr_D Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle End ConditionState = RUBBLE Model = NVBtMstr_D Turret = Turret01 End TrackMarks = EXTnkTrack.tga End ; ***DESIGN parameters *** DisplayName = OBJECT:BattleMaster Side = China EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY BattleMasterTankGun End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End BuildCost = 800 BuildTime = 10.0 ;in seconds VisionRange = 150 ShroudClearingRange = 300 Prerequisites Object = ChinaWarFactory 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 = ChinaVehicleBattleMasterCommandSet ; *** AUDIO Parameters *** VoiceSelect = BattleMasterTankVoiceSelect VoiceMove = BattleMasterTankVoiceMove VoiceGuard = BattleMasterTankVoiceMove VoiceAttack = BattleMasterTankVoiceAttack SoundMoveStart = BattleMasterTankMoveStart SoundMoveStartDamaged = BattleMasterTankMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = BattleMasterTankVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop VoiceCrush = BattleMasterTankVoiceCrush VoiceEnter = BattleMasterTankVoiceMove 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 = 400.0 InitialHealth = 400.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 = 800 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 120 ; turn rate, in degrees per sec ControlledWeaponSlots = PRIMARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL BattleMasterLocomotor Locomotor = SET_NORMAL_UPGRADED NuclearBattleMasterLocomotor Behavior = HordeUpdate ModuleTag_04 RubOffRadius = 150 ; if I am this close to a real hordesman, I will get to be an honorary hordesman UpdateRate = 1000 ; how often to recheck horde status (msec) Radius = 75 ; how close other units must be to us to count towards our horde-ness (~30 feet or so) KindOf = VEHICLE ; what KindOf's must match to count towards horde-ness AlliesOnly = Yes ; do we only count allies towards horde status? ExactMatch = Yes ; do we only count units of our exact same type towards horde status? (overrides kindof) Count = 5 ; how many units must be within Radius to grant us horde-ness Action = HORDE ; when horde-ing, grant us the HORDE bonus End Behavior = PhysicsBehavior ModuleTag_05 Mass = 40.0 End Behavior = FireWeaponWhenDeadBehavior ModuleTag_06 DeathWeapon = NuclearTankDeathWeapon StartsActive = No ; turned on by upgrade TriggeredBy = Upgrade_ChinaNuclearTanks End Behavior = LocomotorSetUpgrade ModuleTag_07 TriggeredBy = Upgrade_ChinaNuclearTanks End Behavior = VeterancyGainCreate ModuleVet_01 StartingLevel = ELITE ScienceRequired = SCIENCE_BattlemasterTraining End ; A crushing defeat Behavior = DestroyDie ModuleTag_08 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_09 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_10 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = CreateCrateDie ModuleTag_11 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = SlowDeathBehavior ModuleTag_12 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 25 DestructionDelay = 200 DestructionDelayVariance = 100 OCL = FINAL OCL_ChinaTankBattleMasterDebris FX = FINAL FX_BattleMasterExplosionOneFinal End Behavior = TransitionDamageFX ModuleTag_13 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 = 13.0 GeometryMinorRadius = 9.0 GeometryHeight = 10 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object ChinaTankOverlord ; *** ART Parameters *** SelectPortrait = SNOverlord_L ButtonImage = SNOverlord UpgradeCameo1 = Upgrade_ChinaUraniumShells UpgradeCameo2 = Upgrade_ChinaNuclearTanks UpgradeCameo3 = Upgrade_ChinaOverlordBattleBunker UpgradeCameo4 = Upgrade_ChinaOverlordGattlingCannon UpgradeCameo5 = Upgrade_ChinaOverlordPropagandaTower Draw = W3DOverlordTankDraw ModuleTag_01 ConditionState = NONE Model = NVOvrlrd Animation = NVOvrlrd.NVOvrlrd AnimationMode = LOOP Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle End ConditionState = REALLYDAMAGED Model = NVOvrlrd_d Animation = NVOvrlrd_d.NVOvrlrd_d AnimationMode = LOOP Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle End ConditionState = RUBBLE Model = NVOvrlrd_d Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle End TrackMarks = EXTnkTrack.tga OkToChangeModelColor = Yes 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. End ; ***DESIGN parameters *** DisplayName = OBJECT:Overlord Side = China EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY OverlordTankGun End WeaponSet Conditions = PLAYER_UPGRADE Weapon = PRIMARY OverlordTankGun Weapon = SECONDARY GattlingBuildingGunAirDummy ;Dummy weapon that allows manual targeting of air units outside range ;gattling cannon upgrade has been made. End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End BuildCost = 2000 BuildTime = 20.0 ;in seconds VisionRange = 150 ShroudClearingRange = 200 Prerequisites Object = ChinaWarFactory Object = ChinaPropagandaCenter End ExperienceValue = 200 200 400 600 ;Experience point value at each level ExperienceRequired = 0 400 600 1200 ;Experience points needed to gain each level IsTrainable = Yes ;Can gain experience CrusherLevel = 3 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushableLevel = 3 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles CommandSet = ChinaTankOverlordDefaultCommandSet ; *** AUDIO Parameters *** VoiceSelect = OverlordTankVoiceSelect SoundMoveStart = OverlordTankMoveStart SoundMoveStartDamaged = OverlordTankMoveStart VoiceMove = OverlordTankVoiceMove VoiceGuard = OverlordTankVoiceMove VoiceAttack = OverlordTankVoiceAttack UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = OverlordTankVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = OverlordTankTurretMoveLoop VoiceCrush = OverlordTankVoiceCrush VoiceEnter = OverlordTankVoiceMove VoiceUnload = OverlordTankVoiceUnload End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK ATTACK_NEEDS_LINE_OF_SIGHT CAN_CAST_REFLECTIONS VEHICLE SCORE HUGE_VEHICLE Body = ActiveBody ModuleTag_02 MaxHealth = 1100.0 InitialHealth = 1100.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 = 2200 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = TransportAIUpdate ModuleTag_03 Turret TurretTurnRate = 60 ;30 ;15 // turn rate, in degrees per sec ControlledWeaponSlots = PRIMARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL OverlordLocomotor Locomotor = SET_NORMAL_UPGRADED NuclearOverlordLocomotor Behavior = FireWeaponWhenDeadBehavior ModuleTag_04 DeathWeapon = NuclearTankDeathWeapon StartsActive = No ; turned on by upgrade TriggeredBy = Upgrade_ChinaNuclearTanks End Behavior = LocomotorSetUpgrade ModuleTag_05 TriggeredBy = Upgrade_ChinaNuclearTanks End Behavior = OverlordContain ModuleTag_06 ; Like Transport, but when full, passes transport queries along to first passenger (redirects like tunnel) Slots = 1 DamagePercentToUnits = 100% AllowInsideKindOf = PORTABLE_STRUCTURE PassengersAllowedToFire = Yes PassengersInTurret = Yes ; My passengers ride in my turret, that's where the Firepoint bones are ExperienceSinkForRider = Yes ; I get the Exp for things my turret friend kills End Behavior = ObjectCreationUpgrade ModuleTag_07 UpgradeObject = OCL_OverlordGattlingCannon TriggeredBy = Upgrade_ChinaOverlordGattlingCannon ConflictsWith = Upgrade_ChinaOverlordPropagandaTower Upgrade_ChinaOverlordBattleBunker End Behavior = WeaponSetUpgrade ModuleTag_WeaponSetUpgrade01 TriggeredBy = Upgrade_ChinaOverlordGattlingCannon ConflictsWith = Upgrade_ChinaOverlordPropagandaTower Upgrade_ChinaOverlordBattleBunker End Behavior = ObjectCreationUpgrade ModuleTag_08 UpgradeObject = OCL_OverlordPropagandaTower TriggeredBy = Upgrade_ChinaOverlordPropagandaTower ConflictsWith = Upgrade_ChinaOverlordGattlingCannon Upgrade_ChinaOverlordBattleBunker End Behavior = ObjectCreationUpgrade ModuleTag_09 UpgradeObject = OCL_OverlordBattleBunker TriggeredBy = Upgrade_ChinaOverlordBattleBunker ConflictsWith = Upgrade_ChinaOverlordGattlingCannon Upgrade_ChinaOverlordPropagandaTower End Behavior = ProductionUpdate ModuleTag_10 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Behavior = CommandSetUpgrade ModuleTag_11 CommandSet = ChinaTankOverlordGattlingCannonCommandSet TriggeredBy = Upgrade_ChinaOverlordGattlingCannon ConflictsWith = Upgrade_ChinaOverlordPropagandaTower Upgrade_ChinaOverlordBattleBunker End Behavior = CommandSetUpgrade ModuleTag_12 CommandSet = ChinaTankOverlordPropagandaTowerCommandSet TriggeredBy = Upgrade_ChinaOverlordPropagandaTower ConflictsWith = Upgrade_ChinaOverlordGattlingCannon Upgrade_ChinaOverlordBattleBunker End Behavior = CommandSetUpgrade ModuleTag_13 CommandSet = ChinaTankOverlordBattleBunkerCommandSet TriggeredBy = Upgrade_ChinaOverlordBattleBunker ConflictsWith = Upgrade_ChinaOverlordGattlingCannon Upgrade_ChinaOverlordPropagandaTower End Behavior = PhysicsBehavior ModuleTag_14 Mass = 50.0 End ; Smoke for a bit then explode ; Behavior = SlowDeathBehavior ;; ProbabilityModifier = 25 ; DestructionDelay = 1500 ; DestructionDelayVariance = 500 ; FX = INITIAL FX_OverlordSmoke ; OCL = FINAL OCL_ChinaTankOverlordDebris ; FX = FINAL FX_GenericTankDeathExplosion ; End ; Catch fire, and explode death ; Behavior = SlowDeathBehavior ;; ProbabilityModifier = 25 ; DestructionDelay = 2000 ; DestructionDelayVariance = 300 ; FX = INITIAL FX_CrusaderCatchFire ; OCL = FINAL OCL_ChinaTankOverlordDebris ; FX = FINAL FX_GenericTankDeathExplosion ; End ; Just explode death Behavior = SlowDeathBehavior ModuleTag_16 ProbabilityModifier = 25 DestructionDelay = 200 DestructionDelayVariance = 100 OCL = FINAL OCL_ChinaTankOverlordDebris FX = FINAL FX_OverlordExplosionOneFinal End Behavior = CreateCrateDie ModuleTag_17 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = TransitionDamageFX ModuleTag_18 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmokeSmallContinuous01 ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_OverlordDamageTransition 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 = 26.0 GeometryMinorRadius = 13.0 GeometryHeight = 15.0 GeometryIsSmall = No Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object ChinaTankOverlordGattlingCannon ; *** ART Parameters *** SelectPortrait = SNGatTower_L ButtonImage = SNGatTower ;UpgradeCameo1 = Upgrade_Nationalism UpgradeCameo1 = Upgrade_ChinaUraniumShells UpgradeCameo2 = Upgrade_ChinaNuclearTanks ;UpgradeCameo4 = NONE UpgradeCameo5 = Upgrade_ChinaOverlordGattlingCannon Draw = W3DDependencyModelDraw ModuleTag_01 OkToChangeModelColor = Yes AttachToBoneInContainer = FIREPOINT01 DefaultConditionState Model = NVOvrlrd_G Turret = TURRET01 TurretPitch = TURRETEL WeaponFireFXBone = PRIMARY Muzzle WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponFireFXBone = SECONDARY Muzzle WeaponMuzzleFlash = SECONDARY MuzzleFX End ConditionState = CONTINUOUS_FIRE_SLOW Model = NVOvrlrd_G Animation = NVOvrlrd_G.NVOvrlrd_G AnimationMode = LOOP AnimationSpeedFactorRange = 0.1 0.1 ;set this state to animate s l o w l y End ConditionState = CONTINUOUS_FIRE_MEAN Model = NVOvrlrd_G Animation = NVOvrlrd_G.NVOvrlrd_G AnimationMode = LOOP AnimationSpeedFactorRange = 0.2 0.2 ;set this state to animate medium-fast End ConditionState = CONTINUOUS_FIRE_FAST Model = NVOvrlrd_G Animation = NVOvrlrd_G.NVOvrlrd_G AnimationMode = LOOP AnimationSpeedFactorRange = 0.3 0.3 ;set this state to animate vryfst ParticleSysBone = Muzzle01 GattlingMuzzleSmoke ParticleSysBone = Muzzle02 GattlingMuzzleSmoke End ConditionState = REALLYDAMAGED Model = NVOvrlrd_GD Turret = TURRET01 TurretPitch = TURRETEL WeaponFireFXBone = PRIMARY Muzzle WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponFireFXBone = SECONDARY Muzzle WeaponMuzzleFlash = SECONDARY MuzzleFX ParticleSysBone = Smoke01 SmokeFactionMedium ParticleSysBone = Smoke02 SmokeFactionMedium ParticleSysBone = Smoke03 SmokeFactionMedium ParticleSysBone = SparkM01 SparksMedium ParticleSysBone = SparkM02 SparksMedium End ConditionState = CONTINUOUS_FIRE_SLOW REALLYDAMAGED Model = NVOvrlrd_GD Animation = NVOvrlrd_G.NVOvrlrd_G AnimationMode = LOOP AnimationSpeedFactorRange = 0.1 0.1 ;set this state to animate s l o w l y End ConditionState = CONTINUOUS_FIRE_MEAN REALLYDAMAGED Model = NVOvrlrd_GD Animation = NVOvrlrd_G.NVOvrlrd_G AnimationMode = LOOP AnimationSpeedFactorRange = 0.2 0.2 ;set this state to animate medium-fast End ConditionState = CONTINUOUS_FIRE_FAST REALLYDAMAGED Model = NVOvrlrd_GD Animation = NVOvrlrd_G.NVOvrlrd_G AnimationMode = LOOP AnimationSpeedFactorRange = 0.3 0.3 ;set this state to animate vryfst ParticleSysBone = Muzzle01 GattlingMuzzleSmoke ParticleSysBone = Muzzle02 GattlingMuzzleSmoke End End ; ***DESIGN parameters *** Side = China EditorSorting = SYSTEM TransportSlotCount = 1 WeaponSet Conditions = None Weapon = PRIMARY GattlingBuildingGun Weapon = SECONDARY GattlingBuildingGunAir PreferredAgainst = SECONDARY BALLISTIC_MISSILE AIRCRAFT End ArmorSet Conditions = None Armor = InvulnerableAllArmor ; We can't be hurt on the field. We share damage from the Overlord with his damage module End VisionRange = 200 ; *** AUDIO Parameters *** UnitSpecificSounds TurretMoveStart = NoSound TurretMoveLoop = NoSound ;TurretMoveLoop VoiceRapidFire = NoSound 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 = 60 // turn rate, in degrees per sec TurretPitchRate = 60 AllowsPitch = Yes End AutoAcquireEnemiesWhenIdle = Yes End Behavior = DestroyDie ModuleTag_04 ;nothing End Behavior = WeaponBonusUpgrade ModuleTag_05 TriggeredBy = Upgrade_ChinaChainGuns End Behavior = StealthDetectorUpdate ModuleTag_06 DetectionRate = 500 ; how often to rescan for stealthed things in my sight (msec) ;DetectionRange = ??? ; Defaults to VisionRange CanDetectWhileContained = Yes End Geometry = BOX GeometryMajorRadius = 8.0 GeometryMinorRadius = 8.0 GeometryHeight = 9.0 GeometryIsSmall = No Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object ChinaTankOverlordPropagandaTower ; *** 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 AttachToBoneInContainer = FIREPOINT01 ConditionState = NONE Model = NVOvrlrd_S Animation = NVOvrlrd_S.NVOvrlrd_S AnimationMode = LOOP End ConditionState = REALLYDAMAGED Model = NVOvrlrd_SD ParticleSysBone = Smoke01 SmolderingSmoke ParticleSysBone = Smoke02 SmolderingSmoke ParticleSysBone = Flame01 SmolderingFire ParticleSysBone = Flame01 SmolderingFlameCore ParticleSysBone = Spark01 LiveWireSparks End ; night ConditionState = NIGHT Model = NVOvrlrd_S Animation = NVOvrlrd_S.NVOvrlrd_S AnimationMode = LOOP End End PlacementViewAngle = -45 ; ***DESIGN parameters *** Side = China EditorSorting = SYSTEM TransportSlotCount = 1 ArmorSet Conditions = None Armor = InvulnerableAllArmor ; We can't be hurt on the field. We share damage from the Overlord with his damage module End VisionRange = 200 ; *** AUDIO Parameters *** UnitSpecificSounds TurretMoveStart = NoSound TurretMoveLoop = NoSound ;TurretMoveLoop End ; *** ENGINEERING Parameters *** KindOf = PRELOAD PORTABLE_STRUCTURE CAN_ATTACK CLICK_THROUGH IGNORED_IN_GUI Body = StructureBody ModuleTag_02 MaxHealth = 100.0 InitialHealth = 100.0 End Behavior = AIUpdateInterface ModuleTag_03 ; End Behavior = PropagandaTowerBehavior ModuleTag_04 Radius = 150.0 DelayBetweenUpdates = 2000 ; in milliseconds HealPercentEachSecond = 1% ; get this % of max health every second PulseFX = FX_OverlordPropagandaTowerPropagandaPulse ;plays as often as DelayBetweenUpdates UpgradeRequired = Upgrade_ChinaSubliminalMessaging UpgradedHealPercentEachSecond = 2% ; get this % of max health every second UpgradedPulseFX = FX_OverlordPropagandaTowerSubliminalPulse ;plays as often as DelayBetweenUpdates 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 ChinaTankOverlordBattleBunker ; *** ART Parameters *** SelectPortrait = SNBunker_L ButtonImage = SNBunker ;UpgradeCameo1 = Upgrade_Nationalism UpgradeCameo1 = Upgrade_ChinaUraniumShells UpgradeCameo2 = Upgrade_ChinaNuclearTanks ;UpgradeCameo4 = NONE UpgradeCameo5 = Upgrade_ChinaOverlordBattleBunker Draw = W3DDependencyModelDraw ModuleTag_01 OkToChangeModelColor = Yes AttachToBoneInContainer = FIREPOINT01 ConditionState = NONE Model = NVOvrlrd_B End ConditionState = REALLYDAMAGED Model = NVOvrlrd_BD ParticleSysBone = Smoke01 SmolderingSmoke ParticleSysBone = Smoke02 SmolderingSmoke ParticleSysBone = Flame01 SmolderingFire ParticleSysBone = Flame01 SmolderingFlameCore ParticleSysBone = Spark01 LiveWireSparks End ; night ConditionState = NIGHT Model = NVOvrlrd_B End ConditionState = NIGHT REALLYDAMAGED Model = NVOvrlrd_BD ParticleSysBone = Smoke01 SmolderingSmoke ParticleSysBone = Smoke02 SmolderingSmoke ParticleSysBone = Flame01 SmolderingFire ParticleSysBone = Flame01 SmolderingFlameCore ParticleSysBone = Spark01 LiveWireSparks End End PlacementViewAngle = -45 ; ***DESIGN parameters *** Side = China EditorSorting = SYSTEM TransportSlotCount = 1 ArmorSet Conditions = None Armor = InvulnerableAllArmor ; We can't be hurt on the field. We share damage from the Overlord with his damage module End VisionRange = 200 ; *** AUDIO Parameters *** UnitSpecificSounds TurretMoveStart = NoSound TurretMoveLoop = NoSound ;TurretMoveLoop VoiceUnload = OverlordTankVoiceUnload End ; *** ENGINEERING Parameters *** KindOf = PRELOAD PORTABLE_STRUCTURE CLICK_THROUGH IGNORED_IN_GUI Body = StructureBody ModuleTag_02 MaxHealth = 100.0 InitialHealth = 100.0 End Behavior = TransportContain ModuleTag_03 Slots = 5 PassengersAllowedToFire = Yes AllowInsideKindOf = INFANTRY EnterSound = GarrisonEnter ExitSound = GarrisonExit DamagePercentToUnits = 50% End Behavior = DestroyDie ModuleTag_04 ;nothing 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 ;------------------------------------------------------------------------------ ;China Dragon Tank Object ChinaTankDragon ; *** ART Parameters *** SelectPortrait = SNDragonTank_L ButtonImage = SNDragonTank UpgradeCameo1 = Upgrade_ChinaBlackNapalm ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = NVDragon Turret = Turret TurretPitch = TURRETEL WeaponFireFXBone = PRIMARY WeaponA WeaponLaunchBone = PRIMARY WeaponA WeaponFireFXBone = SECONDARY WeaponA WeaponLaunchBone = SECONDARY WeaponA End ConditionState = REALLYDAMAGED Model = NVDragon_D Turret = Turret TurretPitch = TURRETEL WeaponFireFXBone = PRIMARY WeaponA WeaponLaunchBone = PRIMARY WeaponA WeaponFireFXBone = SECONDARY WeaponA WeaponLaunchBone = SECONDARY WeaponA End ConditionState = RUBBLE Model = NVDragon_D Turret = Turret TurretPitch = TURRETEL WeaponFireFXBone = PRIMARY WeaponA WeaponLaunchBone = PRIMARY WeaponA WeaponFireFXBone = SECONDARY WeaponA WeaponLaunchBone = SECONDARY WeaponA 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. End ; ***DESIGN parameters *** DisplayName = OBJECT:Dragon Side = China EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY DragonTankFlameWeapon Weapon = SECONDARY DragonTankFireWallWeapon AutoChooseSources = SECONDARY NONE End WeaponSet Conditions = PLAYER_UPGRADE Weapon = PRIMARY DragonTankFlameWeaponUpgraded Weapon = SECONDARY DragonTankFireWallWeaponUpgraded AutoChooseSources = SECONDARY NONE WeaponLockSharedAcrossSets = Yes ; This set is so similar to the default set that it can hold the weapon lock End ArmorSet Conditions = None Armor = DragonTankArmor DamageFX = TankDamageFX End BuildCost = 800 BuildTime = 10.0 ;in seconds VisionRange = 100 ShroudClearingRange = 200 Prerequisites Object = ChinaWarFactory 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 = ChinaTankDragonCommandSet ; *** AUDIO Parameters *** VoiceSelect = DragonTankVoiceSelect VoiceMove = DragonTankVoiceMove VoiceGuard = DragonTankVoiceMove VoiceAttack = DragonTankVoiceAttack SoundMoveStart = DragonTankMoveStart SoundMoveStartDamaged = DragonTankMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = DragonTankVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop VoiceEnter = DragonTankVoiceMove VoiceFlameLocation = DragonTankVoiceFireStorm 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 = 280.0 InitialHealth = 280.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 = 560 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 120 TurretPitchRate = 120 AllowsPitch = Yes MinPhysicalPitch = -15 TurretFireAngleSweep = PRIMARY 10 TurretFireAngleSweep = SECONDARY 60 TurretSweepSpeedModifier = PRIMARY 0.5 ; Sweep slower than you turn (aim for 30 for art) TurretSweepSpeedModifier = SECONDARY 2.0 ; Sweep faster than you turn ControlledWeaponSlots = PRIMARY SECONDARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL DragonLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 50.0 End Behavior = WeaponSetUpgrade ModuleTag_05 TriggeredBy = Upgrade_ChinaBlackNapalm End ; A crushing defeat Behavior = DestroyDie ModuleTag_06 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_07 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_08 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = CreateCrateDie ModuleTag_09 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End ; just explode death Behavior = SlowDeathBehavior ModuleTag_10 DeathTypes = ALL -CRUSHED -SPLATTED ; ProbabilityModifier = 33 DestructionDelay = 500 DestructionDelayVariance = 500 FX = INITIAL FX_BattleMasterExplosionOneFinal OCL = FINAL OCL_DragonDebris FX = FINAL FX_DragonTankDeathExplosionFinal End ; Catch fire, and explode death ; Behavior = SlowDeathBehavior ; DeathTypes = ALL -CRUSHED -SPLATTED ;; ProbabilityModifier = 33 ; DestructionDelay = 2000 ; DestructionDelayVariance = 300 ; FX = INITIAL FX_CrusaderCatchFire ; OCL = FINAL OCL_DragonDebris ; FX = FINAL FX_GenericTankDeathExplosion ; End ; Napalm spills out, and explode death ; Behavior = SlowDeathBehavior ; DeathTypes = ALL -CRUSHED -SPLATTED ;; ProbabilityModifier = 34 ; DestructionDelay = 2000 ; DestructionDelayVariance = 300 ; FX = INITIAL FX_DragonNapalmSpill ; OCL = FINAL OCL_DragonDebris ; FX = FINAL FX_DragonTankDeathExplosionFinal ; End ; Turret fly off death ; Behavior = SlowDeathBehavior ; DeathTypes = ALL -CRUSHED -SPLATTED ;; ProbabilityModifier = 25 ; DestructionDelay = 500 ; DestructionDelayVariance = 100 ; FX = INITIAL FX_GenericTankDeathEffect ; OCL = MIDPOINT OCL_DragonDebris ; FX = FINAL FX_GenericTankDeathExplosionFinal ; End Behavior = FlammableUpdate ModuleTag_12 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End Behavior = TransitionDamageFX ModuleTag_13 ; ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes Psys:SmokeSmallContinuous01 ReallyDamagedParticleSystem2 = Bone:Smoke RandomBone:Yes Psys:DragonTransitionFire ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_DragonDamageTransition End Geometry = BOX GeometryMajorRadius = 15.0 GeometryMinorRadius = 10.0 GeometryHeight = 11.0 ; Height set to allow clear clipping of projectile stream GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object ChinaVehicleTroopCrawler ; *** ART Parameters *** SelectPortrait = SNTransport_L ButtonImage = SNTransport ;UpgradeCameo1 = NONE ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTruckDraw ModuleTag_01 OkToChangeModelColor = Yes ConditionState = NONE Model = NVTCrawler ;note, the IRSonar particle system is added in StealthDetectorUpdate.cpp, not here End ConditionState = REALLYDAMAGED RUBBLE ; THIS IS VERY IMPORTANT... DO NOT REMOVE 'RUBBLE' ; @todo find out why a non-animating model like this has such trouble matching ; reallydamaged against moving against rubble, etc. Model = NVTCrawler_D End TrackMarks = EXTireTrack.tga Dust = RocketBuggyDust DirtSpray = RocketBuggyDirtSpray ; PowerslideSpray = RocketBuggyDirtPowerSlide doesn't powerslide ; These parameters are only used if the model has a separate suspension, ; and the locomotor has HasSuspension = Yes. LeftFrontTireBone = Wheel01 RightFrontTireBone = Wheel08 LeftRearTireBone = Wheel03 RightRearTireBone = Wheel05 MidLeftFrontTireBone = Wheel02 MidRightFrontTireBone = Wheel07 MidLeftRearTireBone = Wheel04 MidRightRearTireBone = Wheel06 TireRotationMultiplier = 0.2 ; this * speed = rotation. PowerslideRotationAddition = 0 ; This vehicle doesn't powerslide. End ; ***DESIGN parameters *** DisplayName = OBJECT:TroopCrawler Side = China EditorSorting = VEHICLE TransportSlotCount = 8 ;Just enough to fit into a Chinook. WeaponSet Conditions = None Weapon = PRIMARY TroopCrawlerAssault End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End BuildCost = 1400 BuildTime = 15.0 ;in seconds VisionRange = 175 ;Needs to see farther and match it's weapon range -- else troop crawlers will get slaughtered against tanks! ShroudClearingRange = 400 Prerequisites Object = ChinaWarFactory 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 = ChinaTroopCrawlerCommandSet ; *** AUDIO Parameters *** VoiceSelect = TroopCrawlerVoiceSelect VoiceMove = TroopCrawlerVoiceMove VoiceGuard = TroopCrawlerVoiceMove VoiceAttack = TroopCrawlerVoiceAttack SoundMoveStart = TroopCrawlerMoveStart SoundMoveStartDamaged = TroopCrawlerMoveStart SoundEnter = HumveeEnter SoundExit = HumveeExit UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = TroopCrawlerVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop TruckLandingSound = NoSound ;RocketBuggyLand TruckPowerslideSound = NoSound ;RocketBuggyPowerslide VoiceCrush = TroopCrawlerVoiceCrush VoiceUnload = TroopCrawlerVoiceUnload VoiceEnter = TroopCrawlerVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK CAN_CAST_REFLECTIONS TRANSPORT VEHICLE SCORE 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 = StealthDetectorUpdate ModuleTag_03 DetectionRate = 900 ; 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. PingSound = IRPing LoudPingSound = IRPingLoud ;;; IRParticleSysName = IRDetectSonar ;;; IRBrightParticleSysName = IRDetectSonarBright ;;; IRGridParticleSysName = IRDetectGrid IRBeaconParticleSysName = IRLenzflare IRParticleSysBone = IRFX End ;OBSOLETE ; Behavior = AIUpdateInterface ModuleTag_04 ; Turret ; ControlledWeaponSlots = PRIMARY ; End ; End Behavior = AssaultTransportAIUpdate ModuleTag_NewAI MembersGetHealedAtLifeRatio = 0.5 End Locomotor = SET_NORMAL TroopCrawlerLocomotor Behavior = PhysicsBehavior ModuleTag_05 Mass = 50.0 End Behavior = TransportContain ModuleTag_06 Slots = 8 InitialPayload = ChinaInfantryRedguard 8 ScatterNearbyOnExit = No HealthRegen%PerSec = 10 DamagePercentToUnits = 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 = SlowDeathBehavior ModuleTag_07 DeathTypes = ALL -CRUSHED -SPLATTED DestructionDelay = 1 FX = FINAL FX_SupplyTruckExplosionOneFinal OCL = FINAL OCL_FinalTroopCrawlerDebris End Behavior = TransitionDamageFX ModuleTag_08 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmallLightSmokeColumn ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_NukeCannonDamageTransition End Behavior = DestroyDie ModuleTag_09 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_10 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End ; A crushing defeat Behavior = FXListDie ModuleTag_11 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateCrateDie ModuleTag_12 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData 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 = 22.0 GeometryMinorRadius = 9.0 GeometryHeight = 13.0 GeometryIsSmall = No Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object ChinaVehicleInfernoCannon ; *** ART Parameters *** SelectPortrait = SNInferno_L ButtonImage = SNInferno UpgradeCameo1 = Upgrade_ChinaBlackNapalm ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 OkToChangeModelColor = Yes ConditionState = NONE Model = NVInferno Turret = Turret TurretPitch = TurretEL WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle End ConditionState = RUBBLE REALLYDAMAGED Model = NVInferno_D Turret = Turret TurretPitch = TurretEL WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle End TrackMarks = EXTnkTrack.tga TreadAnimationRate = 2.0 ; amount of tread texture to move per second End ; ***DESIGN parameters *** DisplayName = OBJECT:InfernoCannon Side = China EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY InfernoCannonGun End WeaponSet Conditions = PLAYER_UPGRADE Weapon = PRIMARY InfernoCannonGunUpgraded End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End BuildCost = 900 BuildTime = 15.0 ;in seconds VisionRange = 180 ShroudClearingRange = 300 Prerequisites Object = ChinaWarFactory Object = ChinaPropagandaCenter End ExperienceValue = 50 50 100 150 ;Experience point value at each level ExperienceRequired = 0 100 200 400 ;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 = ChinaVehicleInfernoCannonCommandSet ; *** AUDIO Parameters *** VoiceSelect = InfernoCannonVoiceSelect VoiceMove = InfernoCannonVoiceMove VoiceGuard = InfernoCannonVoiceMove VoiceAttack = InfernoCannonVoiceAttack SoundMoveStart = InfernoCannonMoveStart SoundMoveStartDamaged = InfernoCannonMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = InfernoCannonVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = NoSound VoiceCrush = InfernoCannonVoiceCrush VoiceEnter = InfernoCannonVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK CAN_CAST_REFLECTIONS VEHICLE SCORE Body = ActiveBody ModuleTag_02 MaxHealth = 120.0 InitialHealth = 120.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 = 240 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = VeterancyGainCreate ModuleTag_03 StartingLevel = VETERAN ScienceRequired = SCIENCE_ArtilleryTraining End Behavior = AIUpdateInterface ModuleTag_04 Turret TurretTurnRate = 100 TurretPitchRate = 100 AllowsPitch = Yes FirePitch = 45 ControlledWeaponSlots = PRIMARY End AutoAcquireEnemiesWhenIdle = No NotWhileAttacking End Locomotor = SET_NORMAL InfernoLocomotor Behavior = PhysicsBehavior ModuleTag_05 Mass = 50.0 End ; A crushing defeat Behavior = FXListDie ModuleTag_06 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_07 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = SlowDeathBehavior ModuleTag_08 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 50 DestructionDelay = 2000 DestructionDelayVariance = 300 FX = INITIAL FX_CrusaderCatchFire FX = FINAL FX_GenericTankDeathExplosion OCL = FINAL OCL_InfernoCannonDeathEffect End Behavior = TransitionDamageFX ModuleTag_09 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmallLightSmokeColumn ReallyDamagedFXList1 = Loc: X:-7 Y:0 Z:0 FXList:FX_BattleMasterDamageTransition End Behavior = CreateCrateDie ModuleTag_10 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = WeaponSetUpgrade ModuleTag_11 TriggeredBy = Upgrade_ChinaBlackNapalm 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 = DestroyDie ModuleTag_22 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 ;------------------------------------------------------------------------------ ;Also called NukeCannon Object ChinaVehicleNukeLauncher ; *** ART Parameters *** SelectPortrait = SNNukeCannon_L ButtonImage = SNNukeCannon UpgradeCameo1 = Upgrade_ChinaNeutronShells ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 InitialRecoilSpeed = 120 MaxRecoilDistance = 8 RecoilSettleSpeed = 6 OkToChangeModelColor = Yes ExtraPublicBone = Turret01 DefaultConditionState Model = NVNukeCn WeaponLaunchBone = PRIMARY Muzzle WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponLaunchBone = SECONDARY Muzzle WeaponMuzzleFlash = SECONDARY MuzzleFX WeaponFireFXBone = SECONDARY Muzzle WeaponRecoilBone = SECONDARY Barrel HideSubObject = TURRET01 ;Hide controlled turret ShowSubObject = TURRETFRONT TURRETBACK ;Show pack/unpack animated turret Turret = Turret01 TurretPitch = TurretEL End ConditionState = RUBBLE Model = NVNukeCn_D1 WeaponLaunchBone = PRIMARY Muzzle WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponRecoilBone = PRIMARY Barrel WeaponLaunchBone = SECONDARY Muzzle WeaponMuzzleFlash = SECONDARY MuzzleFX WeaponRecoilBone = SECONDARY Barrel HideSubObject = TURRET01 ;Hide controlled turret ShowSubObject = TURRETFRONT TURRETBACK ;Show pack/unpack animated turret Turret = Turret01 TurretPitch = TurretEL End ;*** PACKED STATE -- ready to move *** ConditionState = MOVING Animation = NVNukeCn.NVNukeCn AnimationMode = ONCE_BACKWARDS Flags = START_FRAME_FIRST End AliasConditionState = MOVING BETWEEN_FIRING_SHOTS_A ;Very long shot delay -- possibly moving AliasConditionState = BETWEEN_FIRING_SHOTS_A ;*** ConditionState = REALLYDAMAGED MOVING Model = NVNukeCn_D Animation = NVNukeCn_D.NVNukeCn_D AnimationMode = ONCE_BACKWARDS Flags = START_FRAME_FIRST End AliasConditionState = REALLYDAMAGED MOVING BETWEEN_FIRING_SHOTS_A ;Very long shot delay -- possibly moving ;*** UNPACKING STATE -- preparing to fire *** ConditionState = UNPACKING Animation = NVNukeCn.NVNukeCn AnimationMode = MANUAL End AliasConditionState = UNPACKING BETWEEN_FIRING_SHOTS_A ;Very long shot delay ;*** ConditionState = REALLYDAMAGED UNPACKING Model = NVNukeCn_D Animation = NVNukeCn_D.NVNukeCn_D AnimationMode = MANUAL End AliasConditionState = REALLYDAMAGED UNPACKING BETWEEN_FIRING_SHOTS_A ;Very long shot delay ;*** PACKING STATE -- preparing to move *** ConditionState = PACKING Animation = NVNukeCn.NVNukeCn AnimationMode = MANUAL End AliasConditionState = PACKING BETWEEN_FIRING_SHOTS_A ;Very long shot delay ;*** ConditionState = REALLYDAMAGED PACKING Model = NVNukeCn_D Animation = NVNukeCn_D.NVNukeCn_D AnimationMode = MANUAL End AliasConditionState = REALLYDAMAGED PACKING BETWEEN_FIRING_SHOTS_A ;Very long shot delay ;*** DEPLOYED STATE -- ready to fire *** ConditionState = DEPLOYED Animation = NVNukeCn.NVNukeCn AnimationMode = ONCE Flags = START_FRAME_LAST TransitionKey = TRANS_FIRING_A HideSubObject = TURRETFRONT TURRETBACK ;Hide pack/unpack animated turret ShowSubObject = TURRET01 ;Show controlled turret End AliasConditionState = DEPLOYED FIRING_A AliasConditionState = DEPLOYED BETWEEN_FIRING_SHOTS_A AliasConditionState = DEPLOYED RELOADING_A AliasConditionState = DEPLOYED MOVING ConditionState = DEPLOYED REALLYDAMAGED Model = NVNukeCn_D Animation = NVNukeCn_D.NVNukeCn_D AnimationMode = ONCE Flags = START_FRAME_LAST TransitionKey = TRANS_FIRING_A HideSubObject = TURRETFRONT TURRETBACK ;Hide pack/unpack animated turret ShowSubObject = TURRET01 ;Show controlled turret End AliasConditionState = DEPLOYED REALLYDAMAGED FIRING_A AliasConditionState = DEPLOYED REALLYDAMAGED BETWEEN_FIRING_SHOTS_A AliasConditionState = DEPLOYED REALLYDAMAGED RELOADING_A AliasConditionState = DEPLOYED REALLYDAMAGED MOVING TrackMarks = EXTnkTrack.tga TreadAnimationRate = 4.0 ; amount of tread texture to move per second End ; ***DESIGN parameters *** DisplayName = OBJECT:NukeLauncher Side = China EditorSorting = VEHICLE TransportSlotCount = 10 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY NukeCannonGun Weapon = SECONDARY NukeCannonNeutronWeapon AutoChooseSources = PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI AutoChooseSources = SECONDARY FROM_SCRIPT FROM_AI ShareWeaponReloadTime = Yes End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End BuildCost = 1600 BuildTime = 20.0 ;in seconds VisionRange = 180 ShroudClearingRange = 350 Prerequisites Object = ChinaWarFactory Object = ChinaPropagandaCenter Science = SCIENCE_NukeLauncher End ExperienceValue = 50 100 200 400 ;Experience point value at each level ExperienceRequired = 0 400 600 1000 ;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 = ChinaVehicleNukeCannonCommandSet ; *** AUDIO Parameters *** VoiceSelect = NukeCannonVoiceSelect VoiceMove = NukeCannonVoiceMove VoiceGuard = NukeCannonVoiceMove VoiceAttack = NukeCannonVoiceAttack SoundMoveStart = NukeCannonMoveStart SoundMoveStartDamaged = NukeCannonMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = NukeCannonVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = NukeCannonTurretMoveLoop VoiceEnter = NukeCannonVoiceMove Deploy = NukeCannonDeploy Undeploy = NukeCannonUnDeploy End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK CAN_CAST_REFLECTIONS VEHICLE SCORE 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 = VeterancyGainCreate ModuleTag_03 StartingLevel = VETERAN ScienceRequired = SCIENCE_ArtilleryTraining End Behavior = DeployStyleAIUpdate ModuleTag_04 Turret TurretTurnRate = 80 TurretPitchRate = 80 FirePitch = 0 ; Instead of aiming pitchwise at the target, it will aim here AllowsPitch = Yes RecenterTime = 5000 ; how long to wait during idle before recentering ControlledWeaponSlots = PRIMARY SECONDARY NaturalTurretAngle = 0 InitiallyDisabled = Yes End AutoAcquireEnemiesWhenIdle = No PackTime = 3333 UnpackTime = 3333 TurretsFunctionOnlyWhenDeployed = Yes TurretsMustCenterBeforePacking = Yes ManualDeployAnimations = Yes End Locomotor = SET_NORMAL ChinaNukeCannonLocomotor Behavior = PhysicsBehavior ModuleTag_05 Mass = 50.0 End Behavior = SlowDeathBehavior ModuleTag_06 DeathTypes = ALL -CRUSHED -SPLATTED DestructionDelay = 500 DestructionDelayVariance = 100 FX = INITIAL FX_BattleMasterExplosionOneFinal OCL = INITIAL OCL_RadiationFieldSmall OCL = MIDPOINT OCL_ChinaVehicleNukeCannonDie OCL = FINAL OCL_RadiationFieldSmall FX = FINAL FX_ChinaVehicleNukeCannonDeathExplosion End ; A crushing defeat Behavior = FXListDie ModuleTag_07 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_08 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = CreateCrateDie ModuleTag_09 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = TransitionDamageFX ModuleTag_10 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmallLightSmokeColumn ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_NukeCannonDamageTransition End Behavior = DestroyDie ModuleTag_11 DeathTypes = NONE +CRUSHED +SPLATTED 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 = ProductionUpdate ModuleTag_12 MaxQueueEntries = 1; So you can't build multiple upgrades in the same frame End Geometry = BOX GeometryMajorRadius = 32.0 GeometryMinorRadius = 10.0 GeometryHeight = 17.0 GeometryIsSmall = No Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object ChinaTankGattling ; *** ART Parameters *** SelectPortrait = SNGatlingTank_L ButtonImage = SNGatlingTank ;UpgradeCameo1 = Upgrade_Nationalism UpgradeCameo1 = Upgrade_ChinaChainGuns ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = NVGattTank Animation = NVGattTank.NVGattTank AnimationMode = MANUAL Turret = TURRET01 TurretPitch = TURRETEL01 WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponFireFXBone = PRIMARY Muzzle WeaponMuzzleFlash = SECONDARY MuzzleFX WeaponFireFXBone = SECONDARY Muzzle End ConditionState = REALLYDAMAGED RUBBLE Model = NVGattTank_D End ;-----pristine attacking---------------------- ConditionState = ATTACKING Model = NVGattTank Animation = NVGattTank.NVGattTank AnimationMode = LOOP AnimationSpeedFactorRange = 0.5 0.5 ;set this state to animate s l o w l y End ConditionState = CONTINUOUS_FIRE_SLOW ATTACKING Model = NVGattTank Animation = NVGattTank.NVGattTank AnimationMode = LOOP AnimationSpeedFactorRange = 0.8 0.8 ;set this state to animate s l o w l y End ConditionState = CONTINUOUS_FIRE_MEAN ATTACKING Model = NVGattTank Animation = NVGattTank.NVGattTank AnimationMode = LOOP AnimationSpeedFactorRange = 1.5 1.5 ;set this state to animate medium-fast End ConditionState = CONTINUOUS_FIRE_FAST ATTACKING Model = NVGattTank Animation = NVGattTank.NVGattTank AnimationMode = LOOP ParticleSysBone = Muzzle01 GattlingMuzzleSmoke AnimationSpeedFactorRange = 3.0 3.0 ;set this state to animate vryfst End ;-----damaged attacking---------------------- ConditionState REALLYDAMAGED ATTACKING Model = NVGattTank_D Animation = NVGattTank_D.NVGattTank_D AnimationMode = LOOP AnimationSpeedFactorRange = 0.5 0.5 ;set this state to animate extemely sloowly End ConditionState = CONTINUOUS_FIRE_SLOW REALLYDAMAGED ATTACKING Model = NVGattTank_D Animation = NVGattTank_D.NVGattTank_D AnimationMode = LOOP AnimationSpeedFactorRange = 0.8 0.8 ;set this state to animate s l o w l y End ConditionState = CONTINUOUS_FIRE_MEAN REALLYDAMAGED ATTACKING Model = NVGattTank_D Animation = NVGattTank_D.NVGattTank_D AnimationMode = LOOP AnimationSpeedFactorRange = 1.5 1.5 ;set this state to animate medium-fast End ConditionState = CONTINUOUS_FIRE_FAST REALLYDAMAGED ATTACKING Model = NVGattTank_D Animation = NVGattTank_D.NVGattTank_D AnimationMode = LOOP ParticleSysBone = Muzzle01 GattlingMuzzleSmoke AnimationSpeedFactorRange = 3.0 3.0 ;set this state to animate vryfst 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. End ; ***DESIGN parameters *** DisplayName = OBJECT:GattlingTank Side = China EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY GattlingTankGun PreferredAgainst = PRIMARY AIRCRAFT Weapon = SECONDARY GattlingTankGunAir End ArmorSet Conditions = None Armor = AntiAirVehicle DamageFX = TankDamageFX End BuildCost = 800 BuildTime = 10.0 ;in seconds VisionRange = 150 ShroudClearingRange = 360 Prerequisites Object = ChinaWarFactory 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 = ChinaVehicleGattlingTankCommandSet ; *** AUDIO Parameters *** VoiceSelect = GattlingTankVoiceSelect VoiceMove = GattlingTankVoiceMove VoiceGuard = GattlingTankVoiceMove VoiceAttack = GattlingTankVoiceAttack SoundMoveStart = GattlingTankMoveStart SoundMoveStartDamaged = GattlingTankMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = GattlingTankVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoopLoud VoiceCrush = GattlingTankVoiceCrush VoiceEnter = GattlingTankVoiceMove VoiceRapidFire = GattlingTankVoiceRapid 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 = 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 = 600 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = AIUpdateInterface ModuleTag_03 Turret ControlledWeaponSlots = PRIMARY SECONDARY TurretTurnRate = 180 // turn rate, in degrees per sec TurretPitchRate = 180 AllowsPitch = Yes FiresWhileTurning = Yes NaturalTurretPitch = 45 ; this keeps it aimed half way between land and sky ; since you never know from whence cometh danger End AutoAcquireEnemiesWhenIdle = Yes MoodAttackCheckRate = 250 End Locomotor = SET_NORMAL GattlingTankLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 40.0 End ; Behavior = DestroyDie ; ;nothing ; End ; Just explode death Behavior = SlowDeathBehavior ModuleTag_05 ProbabilityModifier = 19 DestructionDelay = 200 DestructionDelayVariance = 100 SinkRate = 0.5 ; in Dist/Sec OCL = FINAL OCL_ChinaTankGattlingDebris FX = FINAL FX_GattlingExplosionOneFinal End Behavior = CreateCrateDie ModuleTag_06 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = TransitionDamageFX ModuleTag_07 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 = WeaponBonusUpgrade ModuleTag_22 TriggeredBy = Upgrade_ChinaChainGuns 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 ;------------------------------------------------------------------------------ ;China Supply Truck Object ChinaVehicleSupplyTruck ; *** ART Parameters *** SelectPortrait = SNSupplyTruck_L ButtonImage = SNSupplyTruck ;UpgradeCameo1 = NONE ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTruckDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = NVSSUPPLYTK HideSubObject = Cargo01 End ConditionState = REALLYDAMAGED Model = NVSSUPPLYTK_D End ConditionState = RUBBLE Model = NVSSUPPLYTK_D End ConditionState = CARRYING ShowSubObject = Cargo01 End ConditionState = REALLYDAMAGED CARRYING Model = NVSSUPPLYTK_D ShowSubObject = Cargo01 End ConditionState = RUBBLE CARRYING Model = NVSSUPPLYTK_D ShowSubObject = Cargo01 End TrackMarks = EXTireTrack.tga LeftFrontTireBone = Tire01 RightFrontTireBone = Tire02 MidLeftRearTireBone = Tire03 MidRightRearTireBone = Tire04 LeftRearTireBone = Tire05 RightRearTireBone = Tire06 TireRotationMultiplier = 0.2 ; this * speed = rotation. PowerslideRotationAddition = 2.5 ; This speed is added to the rotation speed when powersliding. Dust = RocketBuggyDust DirtSpray = RocketBuggyDirtSpray PowerslideSpray = RocketBuggyDirtPowerSlide End ; ***DESIGN parameters *** DisplayName = OBJECT:SupplyTruck Side = China EditorSorting = VEHICLE TransportSlotCount = 2 ;how many "slots" we take in a transport (0 == not transportable) BuildCost = 600 BuildTime = 10.0 ;in seconds VisionRange = 150 ShroudClearingRange = 300 Prerequisites Object = ChinaSupplyCenter 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 = ChinaSupplyTruckCommandSet ; *** AUDIO Parameters *** VoiceSelect = SupplyTruckVoiceSelect VoiceMove = SupplyTruckVoiceMove VoiceAttack = NoSound SoundMoveStart = SupplyTruckMoveStart SoundMoveStartDamaged = SupplyTruckMoveStart UnitSpecificSounds VoiceCreate = SupplyTruckVoiceCreate TruckLandingSound = NoSound TruckPowerslideSound = NoSound VoiceSupply = SupplyTruckVoiceSupply VoiceCrush = SupplyTruckVoiceCrush VoiceEnter = SupplyTruckVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT ;@todo lorenzen removed the CAN_ATTACK from the chinasupplytruck... ok? KindOf = PRELOAD SELECTABLE CAN_CAST_REFLECTIONS VEHICLE HARVESTER SCORE 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 = 600 SubdualDamageHealRate = 500 SubdualDamageHealAmount = 50 End Behavior = SupplyTruckAIUpdate ModuleTag_03 MaxBoxes = 4 SupplyCenterActionDelay = 400 ; ms for whole thing (one transaction) SupplyWarehouseActionDelay = 1000 ; ms per box (many small transactions) SupplyWarehouseScanDistance = 700 ;350 ; Max distance to look for a warehouse, or we go home. (Direct dock command on warehouse overrides, and no max on Center Scan) SuppliesDepletedVoice = SupplyTruckVoiceSuppliesDepleted End Locomotor = SET_NORMAL SupplyTruckLocomotor Behavior = PhysicsBehavior ModuleTag_04 Mass = 5.0 End ExperienceValue = 50 50 50 50 ;Experience point value at each level Behavior = SlowDeathBehavior ModuleTag_05 DeathTypes = ALL -CRUSHED -SPLATTED DestructionDelay = 200 DestructionDelayVariance = 100 FX = FINAL FX_SupplyTruckExplosionOneFinal OCL = FINAL OCL_ChinaSupplyTruckDeathEffect End Behavior = FXListDie ModuleTag_06 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_07 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_ChinaSupplyTruck_CrushEffect End Behavior = TransitionDamageFX ModuleTag_08 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmallLightSmokeColumn ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_NukeCannonDamageTransition End Behavior = FlammableUpdate ModuleTag_10 AflameDuration = 5000 ; If I catch fire, I'll burn for this long... AflameDamageAmount = 3 ; taking this much damage... AflameDamageDelay = 500 ; this often. End ; A crushing defeat Behavior = DestroyDie ModuleTag_11 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = CreateCrateDie ModuleTag_12 CrateData = SalvageCrateData End Geometry = BOX GeometryMajorRadius = 17.0 GeometryMinorRadius = 7.0 GeometryHeight = 14.0 GeometryIsSmall = No Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ ;China Construction Dozer Object ChinaVehicleDozer ; *** ART Parameters *** SelectPortrait = SNDozer_L ButtonImage = SNDozer ;UpgradeCameo1 = NONE ;UpgradeCameo2 = NONE ;UpgradeCameo3 = NONE ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = NVCONSTDOZ_A ParticleSysBone = EXHAUST01 DozerSmokeLight End ConditionState = MOVING ParticleSysBone = EXHAUST01 DozerSmokeHeavy End ConditionState = FIRING_A MOVING PREATTACK_A Model = NVCONSTDOZ_A Animation = NVCONSTDOZ_A.NVCONSTDOZ_A AnimationMode = ONCE ParticleSysBone = EXHAUST01 DozerSmokeHeavy ParticleSysBone = DIRTFX01 DozerDirtFall End AliasConditionState = ATTACKING FIRING_A MOVING ConditionState = REALLYDAMAGED RUBBLE Model = NVCONSTDOZ_AD End ConditionState = MOVING REALLYDAMAGED RUBBLE Model = NVCONSTDOZ_AD ParticleSysBone = EXHAUST01 DozerSmokeHeavy End ConditionState = FIRING_A MOVING PREATTACK_A REALLYDAMAGED RUBBLE Model = NVCONSTDOZ_AD Animation = NVCONSTDOZ_AD.NVCONSTDOZ_AD AnimationMode = ONCE ParticleSysBone = EXHAUST01 DozerSmokeHeavy ParticleSysBone = DIRTFX01 DozerDirtFall End AliasConditionState = ATTACKING FIRING_A MOVING REALLYDAMAGED RUBBLE TrackMarks = EXTnkTrack.tga TreadAnimationRate = 2.0 ; amount of tread texture to move per second End ; ***DESIGN parameters *** DisplayName = OBJECT:Dozer Side = China EditorSorting = VEHICLE TransportSlotCount = 5 ;how many "slots" we take in a transport (0 == not transportable) BuildCost = 1000 BuildTime = 5.0 ;in seconds VisionRange = 150 ShroudClearingRange = 300 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 = ChinaDozerCommandSet ; *** AUDIO Parameters *** VoiceSelect = DozerChinaVoiceSelect VoiceMove = DozerChinaVoiceMove VoiceEnter = DozerChinaVoiceMove VoiceTaskComplete = DozerChinaVoiceBuildComplete SoundMoveStart = DozerChinaMoveStart SoundMoveStartDamaged = DozerChinaMoveStart UnitSpecificSounds VoiceCreate = DozerChinaVoiceCreate VoiceCrush = DozerChinaVoiceCrush VoiceNoBuild = DozerChinaVoiceBuildNot VoiceRepair = DozerChinaVoiceRepair VoiceDisarm = DozerChinaVoiceClearMine VoiceEnter = DozerChinaVoiceMove VoiceBuildResponse = DozerChinaVoiceBuild 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 ChinaVehicleDozerLocomotor 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:SmallLightSmokeColumn 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_ChinaDozerExplode FX = FINAL FX_BattleMasterExplosionOneFinal End Behavior = CreateCrateDie ModuleTag_09 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 Behavior = FXListDie ModuleTag_22 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = DestroyDie ModuleTag_23 DeathTypes = NONE +CRUSHED +SPLATTED End Geometry = BOX GeometryMajorRadius = 17.0;new radius to align mine sweeping position ;GeometryMajorRadius = 21.0;old radius GeometryMinorRadius = 10.0 GeometryHeight = 15.0 GeometryIsSmall = NO Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;-------------------- ¸ÄΪT98---------------------------------------------------------- Object ChinaTankECM ; *** ART Parameters *** SelectPortrait = T13 ButtonImage = T13 UpgradeCameo1 = Upgrade_Nationalism UpgradeCameo2 = Upgrade_ChinaUraniumShells UpgradeCameo3 = Upgrade_ChinaNuclearTanks ;UpgradeCameo4 = NONE ;UpgradeCameo5 = NONE Draw = W3DTankDraw ModuleTag_01 OkToChangeModelColor = Yes DefaultConditionState Model = NVT98 Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle AltTurret = GUN WeaponFireFXBone = SECONDARY GUN WeaponLaunchBone = SECONDARY GUN End ConditionState = REALLYDAMAGED Model = NVT98 Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle AltTurret = GUN WeaponFireFXBone = SECONDARY GUN WeaponLaunchBone = SECONDARY GUN End ConditionState = WEAPONSET_PLAYER_UPGRADE Model = NVT98 Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle AltTurret = GUN WeaponFireFXBone = SECONDARY GUN WeaponLaunchBone = SECONDARY GUN WeaponFireFXBone = TERTIARY GUN WeaponLaunchBone = TERTIARY GUN End ConditionState = REALLYDAMAGED WEAPONSET_PLAYER_UPGRADE Model = NVT98 Turret = Turret01 WeaponFireFXBone = PRIMARY Muzzle WeaponRecoilBone = PRIMARY Barrel WeaponMuzzleFlash = PRIMARY MuzzleFX WeaponLaunchBone = PRIMARY Muzzle AltTurret = GUN WeaponFireFXBone = SECONDARY GUN WeaponLaunchBone = SECONDARY GUN WeaponFireFXBone = TERTIARY GUN WeaponLaunchBone = TERTIARY GUN End ConditionState = RUBBLE Model = NVT98 Turret = Turret01 End TrackMarks = EXTnkTrack.tga End ; ***DESIGN parameters *** DisplayName = OBJECT:ECMTank Side = China EditorSorting = VEHICLE TransportSlotCount = 3 ;how many "slots" we take in a transport (0 == not transportable) WeaponSet Conditions = None Weapon = PRIMARY BattleMasterTankGun Weapon = SECONDARY ECMTankVehicleDisabler End WeaponSet Conditions = PLAYER_UPGRADE Weapon = PRIMARY BattleMasterTankGun Weapon = SECONDARY ECMTankVehicleDisabler End ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End BuildCost = 1500 BuildTime = 20.0 ;in seconds VisionRange = 150 ShroudClearingRange = 300 Prerequisites Object = ChinaWarFactory Object = ChinaPropagandaCenter End ExperienceValue = 100 100 200 400 ;Experience point value at each level ExperienceRequired = 0 20 30 60 ;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 = ChinaVehicleECMTankCommandSet ; *** AUDIO Parameters *** VoiceSelect = BattleMasterTankVoiceSelect VoiceMove = BattleMasterTankVoiceMove VoiceGuard = BattleMasterTankVoiceMove VoiceAttack = BattleMasterTankVoiceAttack SoundMoveStart = BattleMasterTankMoveStart SoundMoveStartDamaged = BattleMasterTankMoveStart UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = BattleMasterTankVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop VoiceCrush = BattleMasterTankVoiceCrush VoiceEnter = BattleMasterTankVoiceMove 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 = 700.0 InitialHealth = 700.0 End Behavior = AIUpdateInterface ModuleTag_03 Turret TurretTurnRate = 120 ; turn rate, in degrees per sec ControlledWeaponSlots = PRIMARY End AltTurret TurretTurnRate = 360 ; turn rate, in degrees per sec ControlledWeaponSlots = SECONDARY TERTIARY End AutoAcquireEnemiesWhenIdle = Yes End Locomotor = SET_NORMAL BattleMasterLocomotor Locomotor = SET_NORMAL_UPGRADED NuclearBattleMasterLocomotor Behavior = HordeUpdate ModuleTag_04 RubOffRadius = 150 ; if I am this close to a real hordesman, I will get to be an honorary hordesman UpdateRate = 1000 ; how often to recheck horde status (msec) Radius = 75 ; how close other units must be to us to count towards our horde-ness (~30 feet or so) KindOf = VEHICLE ; what KindOf's must match to count towards horde-ness AlliesOnly = Yes ; do we only count allies towards horde status? ExactMatch = Yes ; do we only count units of our exact same type towards horde status? (overrides kindof) Count = 5 ; how many units must be within Radius to grant us horde-ness Action = HORDE ; when horde-ing, grant us the HORDE bonus End Behavior = PhysicsBehavior ModuleTag_05 Mass = 40.0 End Behavior = FireWeaponWhenDeadBehavior ModuleTag_06 DeathWeapon = NuclearTankDeathWeapon StartsActive = No ; turned on by upgrade TriggeredBy = Upgrade_ChinaNuclearTanks End Behavior = LocomotorSetUpgrade ModuleTag_07 TriggeredBy = Upgrade_ChinaNuclearTanks End ; A crushing defeat Behavior = DestroyDie ModuleTag_08 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_09 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateObjectDie ModuleTag_10 DeathTypes = NONE +CRUSHED +SPLATTED CreationList = OCL_CrusaderTank_CrushEffect End Behavior = CreateCrateDie ModuleTag_11 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData End Behavior = SlowDeathBehavior ModuleTag_12 DeathTypes = ALL -CRUSHED -SPLATTED ProbabilityModifier = 25 DestructionDelay = 200 DestructionDelayVariance = 100 OCL = FINAL OCL_ChinaTankBattleMasterDebris FX = FINAL FX_BattleMasterExplosionOneFinal End Behavior = TransitionDamageFX ModuleTag_13 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 = 13.0 GeometryMinorRadius = 9.0 GeometryHeight = 10 GeometryIsSmall = Yes Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End ;------------------------------------------------------------------------------ Object ChinaVehicleListeningOutpost ; *** ART Parameters *** SelectPortrait = NVLOutpost_L ButtonImage = NVLOutpost Draw = W3DTruckDraw ModuleTag_01 OkToChangeModelColor = Yes ExtraPublicBone = IRFX ConditionState = NONE Model = NVLOUTPOST End ConditionState = REALLYDAMAGED Model = NVLOUTPOST_D End ConditionState = RUBBLE Model = NVLOUTPOST_D1 HideSubObject = TURRET01 ;Hide the dish, since an ocl makes an airborne one is slow death behavior End TrackMarks = EXTireTrack.tga Dust = RocketBuggyDust DirtSpray = RocketBuggyDirtSpray LeftFrontTireBone = TIRE01 RightFrontTireBone = TIRE02 LeftRearTireBone = TIRE03 RightRearTireBone = TIRE04 TireRotationMultiplier = 0.2 ; this * speed = rotation. PowerslideRotationAddition = 0 ; This vehicle doesn't powerslide. End Draw = W3DModelDraw ModuleTag_33 OkToChangeModelColor = Yes ConditionState = NONE Model = NVLOUTPOST_B Animation = NVLOUTPOST_B.NVLOUTPOST_B AnimationMode = LOOP TransitionKey = Trans_Deployed End ConditionState = REALLYDAMAGED Model = NVLOUTPOST_BD Animation = NVLOUTPOST_BD.NVLOUTPOST_BD AnimationMode = LOOP TransitionKey = Trans_Deployed_ReallyDamaged End ConditionState = MOVING Model = NVLOUTPOST_A Animation = NVLOUTPOST_A.NVLOUTPOST_A AnimationMode = LOOP TransitionKey = Trans_Moving End ConditionState = REALLYDAMAGED MOVING Model = NVLOUTPOST_AD Animation = NVLOUTPOST_AD.NVLOUTPOST_AD AnimationMode = LOOP TransitionKey = Trans_Moving_ReallyDamaged End ConditionState = RUBBLE Model = NONE End AliasConditionState = RUBBLE MOVING ;**** PACKING AND UNPACKING MODES *** TransitionState = Trans_Moving Trans_Deployed Model = NVLOUTPOST_C Animation = NVLOUTPOST_C.NVLOUTPOST_C AnimationMode = ONCE End TransitionState = Trans_Moving_ReallyDamaged Trans_Deployed_ReallyDamaged Model = NVLOUTPOST_CD Animation = NVLOUTPOST_CD.NVLOUTPOST_CD AnimationMode = ONCE End TransitionState = Trans_Deployed Trans_Moving Model = NVLOUTPOST_C Animation = NVLOUTPOST_C.NVLOUTPOST_C AnimationMode = ONCE_BACKWARDS End TransitionState = Trans_Deployed_ReallyDamaged Trans_Moving_ReallyDamaged Model = NVLOUTPOST_CD Animation = NVLOUTPOST_CD.NVLOUTPOST_CD AnimationMode = ONCE_BACKWARDS End End ; ***DESIGN parameters *** DisplayName = OBJECT:ListeningOutpost Side = China EditorSorting = VEHICLE TransportSlotCount = 8 ;Just enough to fit into a Chinook. ;********************************************************************** WeaponSet Conditions = None Weapon = PRIMARY NONE End WeaponSet Conditions = PLAYER_UPGRADE Weapon = PRIMARY ListeningOutpostUpgradedDummyWeapon End ;********************************************************************** ArmorSet Conditions = None Armor = TankArmor DamageFX = TankDamageFX End BuildCost = 800 BuildTime = 15.0 ;in seconds VisionRange = 250 ShroudClearingRange = 500 Prerequisites Object = ChinaWarFactory 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 = ChinaListeningOutpostCommandSet ; *** AUDIO Parameters *** VoiceSelect = ListeningOutpostVoiceSelect VoiceMove = ListeningOutpostVoiceMove VoiceGuard = ListeningOutpostVoiceMove VoiceAttack = ListeningOutpostVoiceAttack SoundMoveStart = RadarVanMoveStart SoundMoveStartDamaged = RadarVanMoveStart SoundEnter = HumveeEnter SoundExit = HumveeExit UnitSpecificSounds ; These have the syntax of SomeNameSomewhereInCode = SomeNameSomewhereInLookupINIs VoiceCreate = ListeningOutpostVoiceCreate TurretMoveStart = NoSound TurretMoveLoop = TurretMoveLoop TruckLandingSound = NoSound ;RocketBuggyLand TruckPowerslideSound = NoSound ;RocketBuggyPowerslide VoiceCrush = NoSound VoiceUnload = NoSound ; nothing recorded VoiceEnter = ListeningOutpostVoiceMove End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = PRELOAD SELECTABLE CAN_ATTACK CAN_CAST_REFLECTIONS TRANSPORT VEHICLE SCORE REVEALS_ENEMY_PATHS CANNOT_RETALIATE 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 = StealthDetectorUpdate ModuleTag_03 DetectionRate = 900 ; how often to rescan for stealthed things in my sight (msec) DetectionRange = 300 ;John, 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. PingSound = IRPing LoudPingSound = IRPingLoud ;;;IRParticleSysName = IRDetectSonar ;;;IRBrightParticleSysName = IRDetectSonarBright ;;;IRGridParticleSysName = IRDetectGrid IRBeaconParticleSysName = IRLenzflare IRParticleSysBone = IRFX End Behavior = TransportAIUpdate ModuleTag_99 AutoAcquireEnemiesWhenIdle = No ; let the contained do it for themselves End Behavior = StealthUpdate ModuleTag_04 StealthDelay = 2000 ; msec StealthForbiddenConditions = MOVING RIDERS_ATTACKING FriendlyOpacityMin = 50.0% FriendlyOpacityMax = 100.0% InnateStealth = Yes OrderIdleEnemiesToAttackMeUponReveal = Yes End Locomotor = SET_NORMAL ListeningOutpostLocomotor Behavior = PhysicsBehavior ModuleTag_05 Mass = 90.0 End Behavior = TransportContain ModuleTag_06 PassengersAllowedToFire = Yes Slots = 2 InitialPayload = ChinaInfantryTankHunter 2 ScatterNearbyOnExit = No HealthRegen%PerSec = 10 DamagePercentToUnits = 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 ArmedRidersUpgradeMyWeaponSet = Yes End Behavior = SlowDeathBehavior ModuleTag_07 DeathTypes = ALL -CRUSHED -SPLATTED DestructionDelay = 1789 FX = INITIAL FX_SupplyTruckExplosionOneFinal OCL = INITIAL OCL_InitialListeningOutpostDebris FX = FINAL FX_SupplyTruckExplosionOneFinal OCL = FINAL OCL_FinalListeningOutpostDebris End Behavior = TransitionDamageFX ModuleTag_08 ReallyDamagedParticleSystem1 = Bone:Smoke RandomBone:Yes PSys:SmallLightSmokeColumn ReallyDamagedFXList1 = Loc: X:0 Y:0 Z:0 FXList:FX_NukeCannonDamageTransition End Behavior = DestroyDie ModuleTag_09 DeathTypes = NONE +CRUSHED +SPLATTED End Behavior = FXListDie ModuleTag_10 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End ; A crushing defeat Behavior = FXListDie ModuleTag_11 DeathTypes = NONE +CRUSHED +SPLATTED DeathFX = FX_CarCrush End Behavior = CreateCrateDie ModuleTag_12 CrateData = SalvageCrateData ;CrateData = EliteTankCrateData ;CrateData = HeroicTankCrateData 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 = 20.0 GeometryMinorRadius = 10.0 GeometryHeight = 22.0 GeometryIsSmall = No Shadow = SHADOW_VOLUME ShadowSizeX = 45 ; minimum elevation angle above horizon. Used to limit shadow length End