;------------------------------------------------------------------------------ ; aka balance WitchKing Object MordorWitchKingNew ;BALANCE WitchKing ; *** ART Parameters *** ; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait. SelectPortrait = HPWitchKing ; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage. ButtonImage = HIWitchKing Draw = W3DScriptedModelDraw ModuleTag_01 OkToChangeModelColor = Yes GlowEnabled = No GlowEmissive = No DefaultModelConditionState Model = MUWchKng_SKN Skeleton = MUWchKng_SKL ;ParticleSysBone = None RingWraithFlare ;ParticleSysBone = None RingWraithWindIdle End IdleAnimationState StateName = STATE_Idle Animation = IDLB AnimationName = MUWchKng_IDLB AnimationMode = LOOP End BeginScript CurDrawableHideSubObject("MACE") EndScript ;Animation = IDLB ; AnimationName = MUWchKng_IDLB ; AnimationMode = ONCE ; AnimationSpeedFactorRange = 0.9 1.1 ; AnimationBlendTime = 20 ;End End AnimationState = MOVING WEAPONSET_TOGGLE_1 StateName = STATE_Mace Animation = RUNA AnimationName = MUWchKng_RUNB AnimationMode = LOOP End BeginScript CurDrawableShowSubObject("MACE") EndScript Flags = RANDOMSTART ParticleSysBone = None InfantryDustTrails End AnimationState = MOVING Animation = RUNB AnimationName = MUWchKng_RUNA AnimationMode = LOOP End BeginScript CurDrawableHideSubObject("MACE") EndScript Flags = RANDOMSTART ParticleSysBone = None InfantryDustTrails End AnimationState = USER_1 WEAPONSET_TOGGLE_1 Animation = DIEA AnimationName = MUWchKng_DIEB AnimationMode = ONCE End BeginScript CurDrawableHideSubObject("MACE") EndScript End AnimationState = USER_1 Animation = DIEA AnimationName = MUWchKng_DIEA AnimationMode = ONCE End BeginScript CurDrawableHideSubObject("MACE") EndScript End AnimationState = DYING WEAPONSET_TOGGLE_1 Animation = DIEA AnimationName = MUWchKng_DIEB AnimationMode = ONCE End BeginScript CurDrawableHideSubObject("MACE") EndScript End AnimationState = DYING DEATH_1 Animation = DIEB AnimationName = MUWchKng_DIEA AnimationMode = ONCE End BeginScript CurDrawableHideSubObject("MACE") EndScript End AnimationState = DYING DEATH_2 Animation = DIEC AnimationName = MUWchKng_DIEA AnimationMode = ONCE End BeginScript CurDrawableHideSubObject("MACE") EndScript End ; AnimationState = DYING ; Animation = DIEA ; AnimationName = MUWchKng_DIEA ; AnimationMode = ONCE ; End ; BeginScript ; CurDrawableHideSubObject("MACE") ; EndScript ; End AnimationState = STUNNED Animation = LNDA AnimationName = MUWchKng_LNDA AnimationMode = ONCE End End AnimationState = STUNNED_STANDING_UP Animation = GTPA AnimationName = MUWchKng_GTPA AnimationMode = ONCE AnimationSpeedFactorRange = 1.5 1.5 End End ;War Mace AnimationState = FIRING_OR_PREATTACK_A WEAPONSET_TOGGLE_1 StateName = STATE_Mace Animation = ATA1 AnimationName = MUWchKng_ATKC AnimationMode = ONCE UseWeaponTiming = No AnimationSpeedFactorRange = 1.111 1.111 End Animation = ATB1 AnimationName = MUWchKng_ATKD AnimationMode = ONCE UseWeaponTiming = No AnimationSpeedFactorRange = 1.5 1.5 End BeginScript CurDrawableShowSubObject("MACE") EndScript Flags = RESTART_ANIM_WHEN_COMPLETE End ;AnimationState = ATTACKING WEAPONSET_TOGGLE_1 ; StateName = STATE_Mace ; Animation = ALERT_1 ; AnimationName = MUWchKng_IDLC ; AnimationMode = LOOP ; AnimationPriority = 10 ; End ; BeginScript ; CurDrawableShowSubObject("MACE") ; EndScript ;End ;Morgul Blade AnimationState = FIRING_OR_PREATTACK_A Animation = ATA1 AnimationName = MUWchKng_ATKA AnimationMode = ONCE UseWeaponTiming = Yes End Animation = ATB1 AnimationName = MUWchKng_ATKB AnimationMode = ONCE UseWeaponTiming = Yes End BeginScript CurDrawableHideSubObject("MACE") EndScript End AnimationState = BETWEEN_FIRING_SHOTS_A Animation = ALERT_1 AnimationName = MUWchKng_IDLA AnimationMode = LOOP AnimationPriority = 10 End BeginScript CurDrawableHideSubObject("MACE") EndScript End TransitionState = TRANS_IdleToSelected Animation = ATNA AnimationName = MUWchKng_ATNA AnimationMode = ONCE AnimationSpeedFactorRange = 0.7 1.3 End End TransitionState = TRANS_SelectedToMace Animation = ATNA AnimationName = MUWchKng_STHA AnimationMode = ONCE AnimationSpeedFactorRange = 0.7 1.3 End BeginScript CurDrawableShowSubObject("MACE") EndScript End TransitionState = TRANS_MaceToSelected Animation = ATNA AnimationName = MUWchKng_STHB AnimationMode = ONCE AnimationSpeedFactorRange = 0.7 1.3 End BeginScript CurDrawableShowSubObject("MACE") EndScript End AnimationState = WAR_CHANT Animation = Chant AnimationName = MUWchKng_CHRA AnimationMode = LOOP End BeginScript CurDrawableHideSubObject("MACE") EndScript End AnimationState = EMOTION_CELEBRATING Animation = CHRA AnimationName = MUWchKng_CHRA AnimationMode = ONCE End BeginScript CurDrawableHideSubObject("MACE") EndScript Flags = RESTART_ANIM_WHEN_COMPLETE End AnimationState = EMOTION_ALERT Animation = ALERT_1 AnimationName = MUWchKng_IDLA AnimationMode = ONCE AnimationPriority = 10 End BeginScript CurDrawableHideSubObject("MACE") EndScript Flags = RESTART_ANIM_WHEN_COMPLETE ; acts like an idle animation & keeps running the animations. End AnimationState = SELECTED WEAPONSET_TOGGLE_1 StateName = STATE_Mace Animation = ATNB AnimationName = MUWchKng_IDLC AnimationMode = LOOP End BeginScript CurDrawableShowSubObject("MACE") Prev = CurDrawablePrevAnimationState() if Prev == "STATE_Selected" then CurDrawableSetTransitionAnimState("TRANS_SelectedToMace") end EndScript End AnimationState = SELECTED StateName = STATE_Selected Animation = ATNB AnimationName = MUWchKng_ATNB AnimationMode = LOOP End BeginScript CurDrawableHideSubObject("MACE") Prev = CurDrawablePrevAnimationState() if Prev == "STATE_Idle" then CurDrawableSetTransitionAnimState("TRANS_IdleToSelected") end if Prev == "STATE_Mace" then CurDrawableSetTransitionAnimState("TRANS_MaceToSelected") end EndScript End AnimationState = WEAPONSET_TOGGLE_1 StateName = STATE_Mace Animation = ATNB AnimationName = MUWchKng_IDLC AnimationMode = LOOP End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "STATE_Idle" then CurDrawableSetTransitionAnimState("TRANS_IdleToSelected") end EndScript End End ; ***DESIGN parameters *** Side = Mordor EditorSorting = UNIT ThreatLevel = 5.0 ThingClass = CHARACTER_UNIT BuildCost = WITCHKING_ON_FELLBEAST_BUILDCOST BuildTime = WITCHKING_ON_FELLBEAST_BUILDTIME DisplayMeleeDamage = WITCHKING_MORGULBLADE_DAMAGE DisplayRangedDamage = WITCHKING_MACE_DAMAGE TransportSlotCount = 1 CommandSet = MordorWitchKingCommandSetNew CommandPoints = 0 Scale = 1.3 VisionRange = VISION_HERO_RANGED ShroudClearingRange = SHROUD_CLEAR_STANDARD DisplayName = OBJECT:MordorWitchKing CrushableLevel = 2 ;What am I?: 0 = for infantry, 1 = for trees, 2 = general vehicles RamPower = 30; RamZMult = 0.5; MaxSimultaneousOfType = 1 WeaponSet Weapon = PRIMARY WitchKingMorgulBlade Weapon = TERTIARY WitchKingMorgulBladeSpecialPower AutoChooseSources = PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI AutoChooseSources = SECONDARY FROM_PLAYER AutoChooseSources = TERTIARY NONE End WeaponSet Conditions = WEAPONSET_TOGGLE_1 Weapon = PRIMARY WitchKingWarMace Weapon = TERTIARY WitchKingMorgulBladeSpecialPower AutoChooseSources = TERTIARY NONE End ArmorSet Conditions = None Armor = HeroArmor DamageFX = NormalDamageFX End ; *** AUDIO Parameters ***; VoiceAttack = SauronVoiceAttack VoiceCreated = CampOrcCreateWitchKing VoiceFullyCreated = CampOrcCreateWitchKing VoiceMove = SauronVoiceMove VoicePriority = 88 VoiceSelect = SauronVoiceSelect ;UnitSpecificSounds ;End EvaEventDamagedOwner = UnitUnderAttack ;Eva event to trigger when unit is damaged ;EvaEventDieOwner = WitchKingDie ;Eva event to trigger on unit's death. NOTICE THAT this is only for permanent deaths ;For deaths you can respawn from, use the DeathFX ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY MONSTER PATH_THROUGH_INFANTRY SCARY Body = ActiveBody ModuleTag_02 CheerRadius = EMOTION_CHEER_RADIUS MaxHealth = WITCHKING_ON_FELLBEAST_HEALTH End Behavior = AutoHealBehavior ModuleTag_WitchKingHealing StartsActive = Yes HealingAmount = HERO_HEAL_AMOUNT HealingDelay = 1000 StartHealingDelay = 15000 HealOnlyIfNotInCombat = Yes End Behavior = WeaponChangeSpecialPowerModule THING SpecialPowerTemplate = SpecialAbilityBerserkerLightTorch FlagsUsedForToggle = WEAPONSET_TOGGLE_1 ToggleOnSleepFrames = 25 ToggleOffSleepFrames = 0 ;ToggleOnAttributeModifier = BerserkerTorchLightingPenalty End ;;; WitchKingOnFootToFellBeast ;;; ; Behavior = UnpauseSpecialPowerUpgrade ModuleTag_MountFellBeastEnabler ; SpecialPowerTemplate = SpecialAbilityWitchKingOnFootToFellBeast ; TriggeredBy = Upgrade_ToggleFellBeast ; End Behavior = SpecialPowerModule ModuleTag_ToggleStarter SpecialPowerTemplate = SpecialAbilityWitchKingOnFootToFellBeast UpdateModuleStartsAttack = Yes StartsPaused = No End Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_ToggleWeaponFireUpdate SpecialPowerTemplate = SpecialAbilityWitchKingOnFootToFellBeast WhichSpecialWeapon = 1 SkipContinue = Yes UnpackTime = 500;1700 PackTime = 1 ; FreezeAfterTriggerDuration = 2500 ; Hold AI for this long after we fire. AwardXPForTriggering = 0 ;StartAbilityRange = 80.0 SpecialWeapon = WitchKingOnFootToFellBeast End Behavior = PhysicsBehavior ModuleTag_04 GravityMult = 1.0 End Behavior = ExperienceLevelCreate ModuleTag_MPLevelBonus LevelToGrant = 10 MPOnly = Yes End Behavior = AttributeModifierAuraUpdate ModuleTag_Leadership StartsActive = Yes ;If no, requires upgrade to turn on. BonusName = WitchKingPassiveLeadership TriggeredBy = Upgrade_WitchKingLeadership RefreshDelay = 2000 Range = 200 AllowPowerWhenAttacking = Yes ObjectFilter = ANY +INFANTRY +CAVALRY +MONSTER -STRUCTURE -BASE_FOUNDATION -HERO End Behavior = AIUpdateInterface ModuleTag_03 AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS ;AILuaEventsList = TrollFunctions End LocomotorSet Locomotor = NazgulLocomotor Condition = SET_NORMAL Speed = 32 End Behavior = SlowDeathBehavior ModuleTag_NormalDeath DeathTypes = ALL -CRUSHED DeathFlags = DEATH_1 SinkDelay = 3000 SinkRate = 1.40 ; in Dist/Sec DestructionDelay = 10000 End Behavior = SlowDeathBehavior ModuleTag_MountFellbeast DeathTypes = NONE +CRUSHED DeathFlags = DEATH_2 FadeDelay = 0 FadeTime = 3000 DestructionDelay = 3000 End Behavior = CreateObjectDie ModuleTag_MakeMordorWitchKingEggDummy RequiredStatus = DEATH_1 CreationList = OCL_MordorWitchKingEggDummy End Behavior = CreateObjectDie ModuleTag_MakeMordorWitchKingOnFellBeastEgg RequiredStatus = DEATH_2 CreationList = OCL_MordorWitchKingOnFellBeastEgg End Geometry = CYLINDER GeometryMajorRadius = 16.0 GeometryMinorRadius = 16.0 GeometryHeight = 16.0 GeometryIsSmall = No Shadow = SHADOW_DECAL ShadowSizeX = 19; ShadowSizeY = 19; ShadowTexture = ShadowI; End ;------------------------------------------------------------------------------ ; Aka FlyingWitchKing Object MordorWitchKingOnFellBeastNew ; *** ART Parameters *** ; This is required for garrisoned objects - please put in all objects. ButtonImage = HIWitchKing ; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait. SelectPortrait = HPWitchKing ImmuneToShockwave = Yes Draw = W3DScriptedModelDraw ModuleTag_01 ExtraPublicBone = B_PASSENGER OkToChangeModelColor = Yes StaticModelLODMode = Yes DefaultModelConditionState Model = MUWchKngFB_SKN WeaponLaunchBone = PRIMARY BAT_TOER1 End ; ModelConditionState = RIDER2 ; Model = CUFellBst_SKN ; End ; ModelConditionState = RIDER3 ; Model = CUFellWrth_SKN ; End IdleAnimationState StateName = Idle Animation = IDLA AnimationName = CUFellBst_SKL.CUFellBst_HVRA AnimationMode = LOOP AnimationBlendTime = 10 AnimationSpeedFactorRange = 0.95 1.05 End End AnimationState = BACKING_UP StateName = backup Animation = IDLA AnimationName = CUFellBst_SKL.CUFellBst_HVRA AnimationMode = LOOP AnimationBlendTime = 10 AnimationSpeedFactorRange = 0.95 1.05 End End AnimationState = DIVING StateName = Diving Animation = Diving AnimationName = CUFellBst_SKL.CUFellBst_ATKD AnimationMode = LOOP AnimationBlendTime = 10 AnimationSpeedFactorRange = 0.95 1.05 End End AnimationState = ABOUT_TO_HIT ; clawing StateName = Claw Animation = Claw AnimationName = CUFellBst_SKL.CUFellBst_ATKD AnimationMode = LOOP AnimationBlendTime = 10 End BeginScript CurDrawableSetTransitionAnimState("Trans_Begin_Attacking") return EndScript End TransitionState = Trans_Begin_Attacking StateName = Grab Animation = Grab AnimationName = CUFellBst_SKL.CUFellBst_GRBA AnimationMode = ONCE AnimationBlendTime = 10 AnimationSpeedFactorRange = 0.4 0.4 End End AnimationState STUNNED SPECIAL_DAMAGED StateName = STUNNED Animation = HitA AnimationName = CUFellBst_SKL.CUFellBst_ATKH AnimationMode = ONCE AnimationBlendTime = 6 End End AnimationState STUNNED StateName = STUNNED Animation = HitA AnimationName = CUFellBst_SKL.CUFellBst_HITA AnimationMode = ONCE AnimationBlendTime = 6 End End ;--- HARD FLAPPING ------------------------ AnimationState = CLIMBING StateName = Climbing Animation = Moving AnimationName = CUFellBst_SKL.CUFellBst_HVRB AnimationMode = LOOP AnimationBlendTime = 10 AnimationSpeedFactorRange = 0.95 1.05 End End AnimationState = FREEFALL StateName = Freefall Animation = Moving AnimationName = CUFellBst_SKL.CUFellBst_IDLA AnimationMode = LOOP AnimationBlendTime = 10 End End AnimationState = MOVING SPECIAL_WEAPON_ONE StateName = Moving Animation = Moving AnimationName = CUFellBst_SKL.CUFellBst_ATKB AnimationMode = LOOP AnimationBlendTime = 10 End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "Idle" then CurDrawableSetTransitionAnimState("Trans_Begin_Moving") return end if Prev == "Climbing" then CurDrawableSetTransitionAnimState("Trans_Begin_Moving") return end EndScript End AnimationState = MOVING StateName = Moving Animation = Moving AnimationName = CUFellBst_SKL.CUFellBst_FLYA AnimationMode = LOOP AnimationBlendTime = 10 AnimationSpeedFactorRange = 0.9 1.1 End BeginScript Prev = CurDrawablePrevAnimationState() if Prev == "Idle" then CurDrawableSetTransitionAnimState("Trans_Begin_Moving") return end if Prev == "Climbing" then CurDrawableSetTransitionAnimState("Trans_Begin_Moving") return end EndScript End TransitionState = Trans_Begin_Moving Animation = Transition AnimationName = CUFellBst_SKL.CUFellBst_HVRC AnimationMode = ONCE AnimationBlendTime = 6 End End AnimationState = RUBBLE Animation = RubbleDieF AnimationName = CUFellBst_SKL.CUFellBst_IDLA;DIVA AnimationMode = ONCE AnimationBlendTime = 10;4 End End AnimationState = DYING DEATH_1 Animation; = DyingA AnimationName = CUFellBst_SKL.CUFellBst_HVRC AnimationMode = LOOP AnimationBlendTime = 10 AnimationSpeedFactorRange = 0.5 0.5 End StateName = DYING DEATH_1 End AnimationState = DYING DEATH_2 Animation; = DyingB AnimationName = CUFellBst_SKL.CUFellBst_ATKD AnimationMode = ONCE ; AnimationBlendTime = 10 ; AnimationSpeedFactorRange = 0.95 1.05 End StateName = DYING DEATH_2 End End ; Draw ; ***DESIGN parameters *** Side = Mordor EditorSorting = UNIT ThreatLevel = 5.0 ThingClass = LARGE_MONSTER TransportSlotCount = 1 Scale = 1.0 DisplayMeleeDamage = NAZGUL_PLOW_DAMAGE_INNER BuildCost = WITCHKING_ON_FELLBEAST_BUILDCOST BuildTime = WITCHKING_ON_FELLBEAST_BUILDTIME WeaponSet Weapon = PRIMARY NazgulPlowAttack PreferredAgainst = PRIMARY STRUCTURE MACHINE HORDE Weapon = SECONDARY NazgulGrabAttack PreferredAgainst = SECONDARY INFANTRY THROWN_OBJECT CAVALRY Weapon = TERTIARY NazgulClawAttack OnlyAgainst = TERTIARY MONSTER End ArmorSet Conditions = None Armor = NazgulArmor DamageFX = FellBeastDamageFX End VisionRange = VISION_FLIER ShroudClearingRange = SHROUD_CLEAR_FLIER DisplayName = OBJECT:MordorWitchKingOnFellBeast RecruitText = CONTROLBAR:MordorWitchKingOnFellBeastRecruit ReviveText = CONTROLBAR:MordorWitchKingOnFellBeastRevive Hotkey = CONTROLBAR:MordorWitchKingOnFellBeastHotkey RamPower = 45; RamZMult = 0.5; CrusherLevel = 3 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles CrushKnockback = 50; CrushZFactor = 1.0; ; CommandSet is overridden by Behavior Rider changes. CommandSet = MordorWitchKingRidingFellBeastCommandSetNew CommandPoints = 0 ; *** AUDIO Parameters ***; VoiceAttack = FellBeastVoiceAttack VoiceAttack2 = FellBeastVox2 ;VoiceCreated = CampOrcCreateNazgul ;this conflicts with his respawn dialogue line -- rehooked to spawn FX ;VoiceFullyCreated = CampOrcCreateNazgul ;this conflicts with his respawn dialogue line -- rehooked to spawn FX VoiceFear = FellBeastAlert VoiceMove = FellBeastVoiceMove VoiceMove2 = FellBeastVox2 VoicePriority = 76 VoiceSelect = FellBeastVoiceSelect VoiceSelect2 = FellBeastVox2 VoiceGuard = FellBeastVoiceMove SoundAmbient = FellBeastVoxAmbientLoop SoundMoveStart = FellBeastMoveStart SoundImpact = FellBeastDie;ImpactHorse ;UnitSpecificSounds ;End EvaEventDamagedOwner = UnitUnderAttack ;Eva event to trigger when unit is damaged ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior MaxUpdateRangeCap = 800 AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_IDLA Frames: 33 AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_ATKB Frames: 1 24 65 87 112 AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_ATKD Frames: 5 AnimationSound = Sound: FellBeastEagleAttack Animation:CUFELLBST_SKL.CUFELLBST_ATKD Frames: 10 AnimationSound = Sound: FellBeastHurt Animation:CUFELLBST_SKL.CUFELLBST_ATKH Frames: 0 AnimationSound = Sound: FellBeastHurt Animation:CUFELLBST_SKL.CUFELLBST_HITA Frames: 0 AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_HITA Frames: 10 AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_FLYA Frames: 5 AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_HVRA Frames: 7 AnimationSound = Sound: FellBeastWingFlapsShort Animation:CUFELLBST_SKL.CUFELLBST_HVRB Frames: 3 AnimationSound = Sound: FellBeastWingFlapsShort Animation:CUFELLBST_SKL.CUFELLBST_HVRC Frames: 5 32 AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_HVRC Frames: 62 103 ;-------- animation unused anymore ----------- ;AnimationSound = Sound: FellBeastEagleAttack Animation:CUFELLBST_SKL.CUFELLBST_ATKE Frames: 20 ;AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_ATKA Frames: 1 24 46 ;AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_ATKC Frames: 16 ;AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_ATKE Frames: 7 ;AnimationSound = Sound: FellBeastWingFlaps Animation:CUFELLBST_SKL.CUFELLBST_ATKF Frames: 7 ;AnimationSound = Sound: FellBeastDie Animation:CUFELLBST_SKL.CUFELLBST_DIEC Frames: 5 End ; *** ENGINEERING Parameters *** RadarPriority = UNIT KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS SCORE NO_FREEWILL_ENTER SCARY MONSTER CANNOT_RETALIATE Body = ActiveBody ModuleTag_02 CheerRadius = EMOTION_CHEER_RADIUS MaxHealth = WITCHKING_ON_FELLBEAST_HEALTH End Behavior = AutoHealBehavior ModuleTag_FellbeastHealing StartsActive = Yes HealingAmount = HERO_HEAL_AMOUNT HealingDelay = 1000 StartHealingDelay = 15000 HealOnlyIfNotInCombat = Yes End Behavior = GiantBirdAIUpdate ModuleTag_GiantBirdAI AutoAcquireEnemiesWhenIdle = No ATTACK_BUILDINGS ; Important that Nazgul not go swooping about on his own, UNLESS IN GUARD STATE MoodAttackCheckRate = 500 AILuaEventsList = FellBeastFunctions FollowThroughDistance = 200 FollowThroughCheckStep = 50 FollowThroughGradient = 1.0 GrabTossTimeTrigger = 2.5 GrabTossHeightTrigger = 100.0 TossFX = FX_DiebyFalling SpecialContactPoints = Swoop AttackPriority = AttackPriority_FellBeast End LocomotorSet Locomotor = FellBeastLocomotor ;BALANCE FellBeast Condition = SET_NORMAL Speed = 88 End LocomotorSet Locomotor = FellBeastLocomotor ; BALANCE FellBeast Condition = SET_SUPERSONIC Speed = 114 End LocomotorSet Locomotor = FellBeastLocomotor ; BALANCE FellBeast Condition = SET_WANDER Speed = 78 End LocomotorSet Locomotor = FellBeastSwoopLocomotor ; BALANCE FellBeast Condition = SET_PANIC Speed = 160 End Behavior = PhysicsBehavior ModuleTag_04 ;;VehicleCrashesIntoBuildingWeaponTemplate = NazgulCrashingOnBuildingWeapon ;;VehicleCrashesIntoNonBuildingWeaponTemplate = NazgulCrashingOnNonBuildingWeapon End Behavior = SpecialPowerModule ModuleTag_FellbeastLevelAttack SpecialPowerTemplate = SpecialAbilityLevelAttack UpdateModuleStartsAttack = Yes ;InitiateSound = End Behavior = FellBeastSwoopPower ModuleTag_FellBeastSwoopPower ; special fellbeast swoop power SpecialPowerTemplate = SpecialAbilityLevelAttack UnpackTime = 1 ; hit the guy AwardXPForTriggering = 0 StartAbilityRange = 1000.0 End Behavior = SpecialPowerModule ModuleTag_FellbeastScreech SpecialPowerTemplate = SpecialAbilityScreech UpdateModuleStartsAttack = Yes End Behavior = SpecialAbilityUpdate ModuleTag_FellBeastScreechSAUpdate SpecialPowerTemplate = SpecialAbilityScreech UnpackTime = 0 AwardXPForTriggering = 0 TriggerSound = NazgulScreech Instant = Yes End ;;; Leadership Ability ;;; Behavior = AttributeModifierAuraUpdate ModuleTag_Leadership StartsActive = Yes ;If no, requires upgrade to turn on. BonusName = WitchKingPassiveLeadership ;TriggeredBy = Upgrade_WitchKingLeadership RefreshDelay = 2000 Range = 200 ObjectFilter = ANY +INFANTRY +CAVALRY +MONSTER -STRUCTURE -BASE_FOUNDATION -HERO End ;;; WitchKingFellBeastToOnFoot ;;; Behavior = SpecialPowerModule ModuleTag_ToggleStarter2 SpecialPowerTemplate = SpecialAbilityWitchKingFellBeastToOnFoot UpdateModuleStartsAttack = Yes StartsPaused = No End Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_ToggleWeaponFireUpdate2 SpecialPowerTemplate = SpecialAbilityWitchKingFellBeastToOnFoot WhichSpecialWeapon = 1 SkipContinue = Yes UnpackTime = 500;1700 PackTime = 1 ;FreezeAfterTriggerDuration = 2500 ; Hold AI for this long after we fire. AwardXPForTriggering = 0 ;StartAbilityRange = 80.0 SpecialWeapon = WitchKingFellBeastToOnFoot End Behavior = SlowDeathBehavior ModuleTag_NormalDeath DeathTypes = ALL -CRUSHED DeathFlags = DEATH_1 DestructionDelay = 500 FX = INITIAL FX_FellBeastDeath End Behavior = SlowDeathBehavior ModuleTag_UnMountFellbeast DeathTypes = NONE +CRUSHED DeathFlags = DEATH_2 FadeDelay = 0 FadeTime = 2000 DestructionDelay = 3000 End Behavior = CreateObjectDie ModuleTag_MakeMordorWitchKingEggDummy RequiredStatus = DEATH_1 CreationList = OCL_MordorWitchKingEggDummy End Behavior = CreateObjectDie ModuleTag_MakeMordorWitchKingEgg RequiredStatus = DEATH_2 CreationList = OCL_MordorWitchKingEgg End Behavior = SquishCollide ModuleTag_06 ;nothing End ; Detects stealth like the General's Pathfinder ; Behavior = StealthDetectorUpdate ModuleTag_10 ; DetectionRate = 500 ; how often to rescan for stealthed things in my sight (msec) ; ;DetectionRange = ??? ; 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 ;;; AUTO ABILITY MODULE ;;; Behavior = AutoAbilityBehavior ModuleTag_AutoAbilityBehavior End Behavior = ExperienceLevelCreate ModuleTag_LevelBonus ;fixes the helptext not being ok on command button LevelToGrant = 10 MPOnly = No End Geometry = CYLINDER GeometryMinorRadius = 39.0 GeometryMajorRadius = 39.0 GeometryHeight = 40.0 GeometryOffset = X:0 Y:0 Z:-10 GeometryIsSmall = No Shadow = SHADOW_VOLUME_NON_SELF_3; volumetric shadow that doesn't cast onto all objects using SHADOW_VOLUME_NON_SELF_3 ShadowSunAngle = 89; clamp the angle so shadow casts straight down. End ;----------------------------------------------------------------------------------------- Object MordorWitchKingOnFellBeastEgg Draw = W3DScriptedModelDraw ModuleTag_Draw DefaultModelConditionState Model = None End End KindOf = INERT IMMOBILE UNATTACKABLE Body = ActiveBody ModuleTag_MakesKillWork MaxHealth = 1 End Behavior = LifetimeUpdate ModuleTag_HatchTrigger MinLifetime = 0.0 MaxLifetime = 0.0 End Behavior = SlowDeathBehavior ModuleTag_HatchProcess DestructionDelay = 2000 OCL = FINAL OCL_SpawnMordorWitchKingOnFellBeast End End ;----------------------------------------------------------------------------------------- Object MordorWitchKingEgg Draw = W3DScriptedModelDraw ModuleTag_Draw DefaultModelConditionState Model = None End End KindOf = INERT IMMOBILE UNATTACKABLE Body = ActiveBody ModuleTag_MakesKillWork MaxHealth = 1 End Behavior = LifetimeUpdate ModuleTag_HatchTrigger MinLifetime = 0.0 MaxLifetime = 0.0 End Behavior = SlowDeathBehavior ModuleTag_HatchProcess DestructionDelay = 2000 OCL = FINAL OCL_SpawnMordorWitchKing End End ;----------------------------------------------------------------------------------------- Object MordorWitchKingEggDummy Draw = W3DScriptedModelDraw ModuleTag_Draw DefaultModelConditionState Model = None End End KindOf = INERT IMMOBILE UNATTACKABLE Body = RespawnBody ModuleTag_RespawnBody CheerRadius = EMOTION_CHEER_RADIUS MaxHealth = 1 PermanentlyKilledByFilter = NONE ;Who kills me permanently? DodgePercent = HERO_DODGE_PERCENT End Behavior = RespawnUpdate ModuleTag_RespawnUpdate DeathAnim = DYING ;STUNNED ;Model condition to play when killed-to-respawn ;DeathFX = FX_WitchKingDeath ;FXList to play when killed-to-respawn DeathAnimationTime = 5133 ;How long DeathAnim will take. ;InitialSpawnFX = FX_WitchKingOnFootInitialSpawn RespawnAnim = LEVELED ;Animation to play when respawning. RespawnFX = FX_HordeResEvil ;FXList to play when respawning. RespawnAnimationTime = 2000 ;Time it takes for respawn to play. AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP ;Respawn at this location -- and at it's exit production point if possible. ButtonImage = HIWitchKing RespawnAsTemplate = MordorWitchKingNew ;RespawnEntries determine the ruleset for how a character can be revived. Some units may automatically respawn, others ;may require a specific revive action performed on him. You can specify different values for each level... or use Level:Any RespawnRules = AutoSpawn:No Cost:0 Time:300000 Health:100% ;DEFAULT VALUES RespawnEntry = Level:2 Cost:500 Time:90000 ;For other levels, only override what is different. RespawnEntry = Level:3 Cost:600 Time:90000 RespawnEntry = Level:4 Cost:700 Time:90000 RespawnEntry = Level:5 Cost:800 Time:120000 RespawnEntry = Level:6 Cost:900 Time:120000 RespawnEntry = Level:7 Cost:1000 Time:120000 RespawnEntry = Level:8 Cost:1100 Time:120000 RespawnEntry = Level:9 Cost:1200 Time:120000 RespawnEntry = Level:10 Cost:1300 Time:120000 End Behavior = LifetimeUpdate ModuleTag_HatchTrigger MinLifetime = 0.0 MaxLifetime = 0.0 End End