Jump to content


Photo

Balrog help


  • Please log in to reply
12 replies to this topic

#1 LegolasPrime

LegolasPrime
  • New Members
  • 37 posts

Posted 06 May 2006 - 02:21 PM

I'm trying to add the Balrog as a hero to the Wild. I decided to make another Balrog object though. But when I play the game it doesn't show up on the fortress buildable objects, here's my codes,

WildBalrog.ini:

[code=auto:0];------------------------------------------------------------------------------
Object WildBalrog

; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait.
SelectPortrait = HPBalrog

; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage.
ButtonImage = HIBalrog

Draw = W3DScriptedModelDraw ModuleTag_BodyDraw
; GlowEnabled = Yes
; GlowEmissive = Yes

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

OkToChangeModelColor = Yes

ExtraPublicBone = ZZZPASSENGERBON
ExtraPublicBone = ZZZWHIPCOIL
ExtraPublicBone = SWORD

;-------------------------
ModelConditionState = NONE; Not DefaultConditionState, because that keyword copies anything in here to every other state
Model = MUBalrog_SKN
ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes ; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingSmokeLite FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingSmokeLite FollowBone:yes
End

; This is triggered by the single player only HitReaction module for the lightningsword
ModelConditionState = HIT_LEVEL_2
Model = MUBalLIT_SKN
End

ModelConditionState = HERO
Model = MUBalIGNT_SKN
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingEmbers FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingEmbers FollowBone:yes

ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes ; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = NONE BalrogIgniteHeatWave FollowBone:no
End

;-----------------
IdleAnimationState
StateName = State_Idle
Animation = Breathe
AnimationName = MUBalrog_SKL.MUBalrog_IDLA
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 20
End
Animation = LookAround
AnimationName = MUBalrog_SKL.MUBalrog_IDLB
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 2
End
Animation = SnortLikeABull
AnimationName = MUBalrog_SKL.MUBalrog_IDLC
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 1
End

BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "State_JustBuilt"
then CurDrawableSetTransitionAnimState("TRANS_JustBuilt_To_Idle")
end
if Prev == "State_AboutToHitGround"
then CurDrawableSetTransitionAnimState("TRANS_AboutToHitGround_To_Idle")
end
EndScript
End

AnimationState = DYING DEATH_1
Animation = Dying
AnimationName = MUBalrog_SKL.MUBalrog_DIEA
AnimationMode = ONCE
End
ParticleSysBone = None BalrogFallDust FollowBone:No
End

AnimationState = DYING DEATH_2
Animation = FadingOut
AnimationName = MUBalrog_SKL.MUBalrog_RORC
AnimationMode = ONCE
End
End


; This is triggered by the single player only HitReaction module for the lightningsword
; It is highest instead of lowest priority, because the hit reaction Paralyzes us, where for others it is just a fancy idle.
AnimationState = HIT_LEVEL_2
Animation = Owowowowowowowow
AnimationName = MUBalrog_SKL.MUBalrog_HITB
AnimationMode = ONCE
End
End

AnimationState = EATING
Animation = DoingHorribleThingToGrabbedGuy
AnimationName = MUBalrog_SKL.MUBalrog_BRNA
AnimationMode = ONCE
AnimationBlendTime = 0
End

ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames2 FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlamesFinal FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSqueezeFlash FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSmoke FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAsh FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAshSmall FollowBone:Yes
End

AnimationState = UNPACKING PACKING_TYPE_3
Animation = GrabbingToTouching
AnimationName = MUBalrog_SKL.MUBalrog_GRBA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = PACKING PACKING_TYPE_3
Animation = GrabbingFollowThrough
AnimationName = MUBalrog_SKL.MUBalrog_GRBC
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = JUST_BUILT
StateName = State_JustBuilt
Animation
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = MANUAL
AnimationBlendTime = 0
End
End

TransitionState = TRANS_JustBuilt_To_Idle
Animation = BeingSummoned
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = ONCE
End
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalrog_SKL.MUBalrog_WIPA
AnimationMode = ONCE
End
ParticleSysBone = RTHANDBONE BalrogWhip2swordEfx FollowBone:Yes
End

AnimationState = SPECIAL_POWER_1
Animation = RoaringFear
AnimationName = MUBalrog_SKL.MUBalrog_RORB
AnimationMode = ONCE
End
ParticleSysBone = BAT_JAW BalrogScreamEffect FollowBone:Yes
FXEvent = Frame:20 Name:FX_BalrogScreamEfx
ParticleSysBone = BAT_JAW balrogPixelDisplScrm FollowBone:Yes
ParticleSysBone = BAT_JAW balrogScrmEmbers FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_ONE
Animation = BreathingFireAnimation
AnimationName = MUBalrog_SKL.MUBalrog_FIRA
AnimationMode = ONCE
End
;This is Balrog's fire breath efx
ParticleSysBone = BAT_JAW balrogFireBreath FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathEmbers FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathSmoke FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathProxy FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_TWO UNPACKING
StateName = State_LeapStart
Animation = GettingReadyToLeap
AnimationName = MUBalrog_SKL.MUBalrog_JMP1
AnimationMode = ONCE
End
End

AnimationState = SPECIAL_WEAPON_TWO PACKING
Animation = FirstWingBeatGoingUp
AnimationName = MUBalrog_SKL.MUBalrog_JMP2
AnimationMode = ONCE
End
End

AnimationState = ABOUT_TO_HIT ; Before ThrownProjectile, since by definition this set for nn frames while T_P is still on
StateName = State_AboutToHitGround
Animation = StartingToLandToTouchingGround
AnimationName = MUBalrog_SKL.MUBalrog_LND1
AnimationMode = ONCE
End
End

AnimationState = THROWN_PROJECTILE
Animation = HurtlingThroughAir
AnimationName = MUBalrog_SKL.MUBalrog_FLYA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

TransitionState = TRANS_AboutToHitGround_To_Idle
Animation = SplashAtEndOfJump
AnimationName = MUBalrog_SKL.MUBalrog_LND2
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = TURN_RIGHT
Animation = TurningRight
AnimationName = MUBalrog_SKL.MUBalrog_TRNA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = TURN_LEFT
Animation = TurningLeft
AnimationName = MUBalrog_SKL.MUBalrog_TRNB
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = MOVING
Animation = Running
AnimationName = MUBalrog_SKL.MUBalrog_WLKA
AnimationMode = LOOP
AnimationBlendTime = 10
End
Flags = RANDOMSTART

FXEvent = Frame:20 FireWhenSkipped Name:FX_BalrogRightFootStep
FXEvent = Frame:44 FireWhenSkipped Name:FX_BalrogLeftFootStep
End

AnimationState = WEAPONSET_HERO_MODE UNPACKING PACKING_TYPE_1
Animation = StartIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTA
AnimationMode = ONCE
End
End

AnimationState = HERO PACKING PACKING_TYPE_1
Animation = FinishIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTB
AnimationMode = ONCE
End

EnteringStateFX = FX_BalrogIgniteStart
End

AnimationState = FIRING_OR_PREATTACK_A
Animation = Swipe
AnimationName = MUBalrog_SKL.MUBalrog_ATKB
AnimationMode = ONCE
UseWeaponTiming = Yes
End
End

AnimationState = FIRING_OR_PREATTACK_C
Animation = Chop
AnimationName = MUBalrog_SKL.MUBalrog_ATKA
AnimationMode = ONCE
UseWeaponTiming = Yes
End
ParticleSysBone = SWORDBONE BalrogSword FollowBone:yes
End
End

;--------------------------
Draw = W3DScriptedModelDraw ModuleTag_WhipDraw
GlowEnabled = Yes
GlowEmissive = Yes
ShadowForceDisable = Yes;The shadow setting is for the whole drawable, but this individual draw module wants to not have a shadow.

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

DefaultModelConditionState
Model = None
End

ModelConditionState = FIRING_OR_PREATTACK_B
Model = MUBalsWhip_SKN
End

;------------------
IdleAnimationState
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalsWhip_SKL.MUBalsWhip_WIPA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End
WadingParticleSys = BalrogRiverSteam
End

; ***DESIGN parameters ***
DisplayName = OBJECT:WildBalrog
;//DisplayMeleeDamage = BALROG_DAMAGE_DISPLAY

Side = Wild
EditorSorting = UNIT
ThreatLevel = 4.0
ThingClass = CHARACTER_UNIT
CrusherLevel = 4 ;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
CrushWeapon = BalrogCrush

TransportSlotCount = TRANSPORTSLOTCOUNT_MONSTER

WeaponSet
Conditions = None
Weapon = PRIMARY MordorBalrogSwordSwipe
Weapon = SECONDARY MordorBalrogWhip
Weapon = TERTIARY MordorBalrogSwordChop

AutoChooseSources = SECONDARY None
OnlyAgainst = TERTIARY STRUCTURE BIG_MONSTER
End

ArmorSet
Conditions = None
Armor = BalrogArmor
DamageFX = NormalDamageFX
End

VisionRange = VISION_BALROG
ShroudClearingRange = SHROUD_CLEAR_BALROG

DisplayName = OBJECT:WildBalrog
ShockwaveResistance = SHOCKWAVE_RESISTANCE_ALWAYS
CommandSet = WildBalrogCommandSet
CanPathThroughGates = No
IsTrainable = Yes

DeadCollideSize = LARGE; How big does the AOD consider this unit for damage fx & behavior.


;------------------ AUDIO Parameters ----------------------

VoiceAttack = BalrogVoiceAttack
VoiceAttackCharge = BalrogVoiceAttack
VoiceAttackMachine = BalrogVoiceAttack
VoiceAttackStructure = BalrogVoiceAttack
VoiceGuard = BalrogVoiceMove
VoiceMove = BalrogVoiceMove
VoiceSelect = BalrogVoiceSelect
VoiceSelectBattle = BalrogVoiceSelect

SoundAmbient = BalrogAmbientLoop
SoundImpact = ImpactHorse

#include "..\includes\StandardUnitEvaEvents.inc"

; Warn the player when the enemy gets a unit. Override the normal sighting event from StandardUnitEvaEvents.inc
EvaEnemyObjectSightedEvent = DiscoveredEnemyBalrog

ClientUpdate = EvaAnnounceClientCreate ModuleTag_CreateAnnounce
AnnouncementEventEnemy = DiscoveredEnemyBalrog
AnnouncementEventAlly = None
AnnouncementEventOwner = None

OnlyIfVisible = Yes ; Don't announce if hidden in the shroud
CountAsFirstSightedAnnoucement = Yes; Don't re-annouce if going into shroud & back
UseObjectsPosition = No ; Play from central Fortress, not at unit's position
CreateFakeRadarEvent = Yes ; Allow player to jump to unit after hearing annoucement
End

ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
MaxUpdateRangeCap = 800
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_WLKA Frames: 42 17
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNA Frames: 21 52
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNB Frames: 21 52

AnimationSound = Sound: BalrogWhipPart1 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 1
AnimationSound = Sound: BalrogWhipPart2 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 21
AnimationSound = Sound: ImpactWhipCrack Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 34

AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKB Frames: 32
AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKA Frames: 32
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKA Frames:41
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKB Frames:40
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKC Frames:27 53 88

AnimationSound = Sound: BalrogJump_Part1 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 0
AnimationSound = Sound: BalrogJump_Part2 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 41
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_FLYA Frames: 9
AnimationSound = Sound: BalrogLand Animation: MUBalrog_SKL.MUBalrog_LND1 Frames: 0
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_JMP2 Frames: 0
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 6
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 27

AnimationSound = Sound: BalrogBreathFireExhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 31
AnimationSound = Sound: BalrogBreathFireInhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 0

AnimationSound = Sound: BalrogRoar Animation: MUBalrog_SKL.MUBalrog_RORB Frames: 25
AnimationSound = Sound: BalrogVanquishedRoar Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 21
AnimationSound = Sound: BalrogVanquished Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 50

AnimationSound = Sound: BalrogInjuredB_Part1 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 0
AnimationSound = Sound: BalrogInjuredB_Part2 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 70

AnimationSound = Sound: BalrogChuckle Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 1
AnimationSound = Sound: BalrogContentVox Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 0
AnimationSound = Sound: BalrogIdleB_Part1 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 0
AnimationSound = Sound: BalrogIdleB_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 37
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 95
AnimationSound = Sound: BalrogIdleC_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 29
AnimationSound = Sound: BalrogIdleC_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 60
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 61

AnimationSound = Sound: BalrogDieVox Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 13
AnimationSound = Sound: BalrogBodyfall1 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 56
AnimationSound = Sound: BalrogBodyfall2 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 57
AnimationSound = Sound: OliphantFall Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 21
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 54

AnimationSound = Sound: BalrogIgnite Animation: MUBalrog_SKL.MUBalrog_IGNTA Frames: 51
End


; *** ENGINEERING Parameters ***

RadarPriority = UNIT
KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS MONSTER SCORE CAN_ATTACK NO_FREEWILL_ENTER PATH_THROUGH_INFANTRY SCARY BIG_MONSTER CAN_ATTACK_WALLS SUMMONED
ThreatBreakdown MordorBalrog_DetailedThreat
AIKindOf = SIEGEWEAPON
End

Body = RespawnBody ModuleTag_RespawnBody
CheerRadius = EMOTION_CHEER_RADIUS
MaxHealth = 10000
PermanentlyKilledByFilter = NONE
DodgePercent = HERO_DODGE_PERCENT
End
Behavior = RespawnUpdate ModuleTag_RespawnUpdate
DeathAnim = DYING
DeathFX = FX_EomerDieToRespawn
DeathAnimationTime = 3333
InitialSpawnFX = FX_EomerInitialSpawn
RespawnAnim = LEVELED
RespawnFX = FX_EomerRespawn
RespawnAnimationTime = 2000
AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP
ButtonImage = HIEomer

RespawnRules = AutoSpawn:No Cost:700 Time:90000 Health:100%
RespawnEntry = Level:2 Cost:800 Time:90000
RespawnEntry = Level:3 Cost:900 Time:90000
RespawnEntry = Level:4 Cost:1000 Time:90000
RespawnEntry = Level:5 Cost:1100 Time:120000
RespawnEntry = Level:6 Cost:1300 Time:120000
RespawnEntry = Level:7 Cost:1400 Time:120000
RespawnEntry = Level:8 Cost:1500 Time:120000
RespawnEntry = Level:9 Cost:1600 Time:120000
RespawnEntry = Level:10 Cost:1700 Time:120000
End

Behavior = StancesBehavior ModuleTag_StancesBehavior
StanceTemplate = FighterHorde
End

Behavior = AIUpdateInterface ModuleTag_03
AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS
MoodAttackCheckRate = 500
AILuaEventsList = BalrogFunctions
End

LocomotorSet
Locomotor = BalrogLocomotor
Condition = SET_NORMAL
Speed = 50
End

Behavior = BezierProjectileBehavior ModuleTag_Projectile; Module starts asleep, and wakes up when thrown.
; To tweak a Bezier path
FirstHeight = 104 ; Height of Bezier control points above highest intervening terrain
SecondHeight = 52
FirstPercentIndent = 20%; Percentage of shot distance control points are placed
SecondPercentIndent = 70%
TumbleRandomly = Yes

CrushStyle = Yes; I don't detonate, I just hit

BounceCount = 0 ; When I hit the ground, I'll arc again

FinalStuckTime = 1766; Can't move for this long afterwards

GroundHitFX = FX_BalrogJumpHitGround
GroundHitWeapon = RohanGimliLeapWarhead

PreLandingStateTime = 300; Look ahead to the end of the arc, and get the ABOUT_TO_HIT flag this far in advance
End

Behavior = PhysicsBehavior ModuleTag_04
GravityMult = 1.0
End

Behavior = FireWeaponUpdate FireWeaponUpdateModuleTag
FireWeaponNugget
WeaponName = MordorBalrogHeroEffect
FireDelay = 0
OneShot = No
End
HeroModeTrigger = Yes; this only happens when hero mode is active
End

Behavior = SlowDeathBehavior ModuleTag_05
DeathTypes = ALL -FADED
DestructionDelay = 2500
FX = FINAL FX_BalrogFinalDeath
DeathFlags = DEATH_1
End

Behavior = SlowDeathBehavior ModuleTag_FadeDeath
DeathTypes = NONE +FADED
FX = INITIAL FX_BalrogUnsummonInitial
DestructionDelay = 3800
FX = FINAL FX_BalrogUnsummonFinal
DeathFlags = DEATH_2
End

Behavior = SpecialPowerModule ModuleTag_IgniteStarter
SpecialPowerTemplate = SpecialAbilityHeroMode
UpdateModuleStartsAttack = Yes
;InitiateSound =
End
Behavior = HeroModeSpecialAbilityUpdate ModuleTag_IgniteUpdate
SpecialPowerTemplate = SpecialAbilityHeroMode
UnpackingVariation = 1

UnpackTime = 1800
PackTime = 1600

AwardXPForTriggering = 0

HeroAttributeModifier = BalrogIgniteState
HeroEffectDuration = 30000
End

Behavior = SpecialPowerModule ModuleTag_ScreamStarter
SpecialPowerTemplate = SpecialAbilityBalrogScream
UpdateModuleStartsAttack = Yes
;InitiateSound =
End
Behavior = ModelConditionSpecialAbilityUpdate ModuleTag_ScreamUpdate ; So the difference in SpecialPower is that it takes timing from this UpdateG, instead of simply firing.
SpecialPowerTemplate = SpecialAbilityBalrogScream

UnpackTime = 1500; Drawing the horn
PreparationTime = 1 ; nothing
PackTime = 1800; Putting horn away

AwardXPForTriggering = 0

WhichSpecialPower = 1
End

Behavior = SpecialPowerModule ModuleTag_BreathStarter
SpecialPowerTemplate = SpecialAbilityBalrogBreath
UpdateModuleStartsAttack = Yes
InitiateSound = BalrogSpecialPowerRoar;this plays on right-click target, not when Balrog leaps
End

Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_BreathUpdate
SpecialPowerTemplate = SpecialAbilityBalrogBreath

UnpackTime = 1300; Drawing the horn
PackTime = 3700; Putting horn away

AwardXPForTriggering = 0

StartAbilityRange = 40.0

SpecialWeapon = MordorBalrogBreath
WhichSpecialWeapon = 1
End

Behavior = SpecialPowerModule ModuleTag_LeapStarter
SpecialPowerTemplate = SpecialAbilityBalrogWings
UpdateModuleStartsAttack = Yes
InitiateSound = BalrogSpecialPowerRoar;this plays on right-click target, not when Balrog leaps
End

Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_LeapUpdate
SpecialPowerTemplate = SpecialAbilityBalrogWings

UnpackTime = 1733; Drawing the horn
PackTime = 1160; Putting horn away

AwardXPForTriggering = 0

StartAbilityRange = 800.0
ApproachRequiresLOS = No
SpecialWeapon = MordorBalrogLeap
BusyForDuration = 3000; don't accept any AI for this long... ai commands will be queued
WhichSpecialWea

#2 zimoo

zimoo

    Ecthelion of the Fountain

  • Project Team
  • 2,009 posts
  • Location:Devon, England
  • Projects:Lurking until the off topic begins...
  •  Guardian of the Books

Posted 06 May 2006 - 02:49 PM

I'm not sure if this will fix it but I'm pretty sure you need a buildcost and buildtime
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image

Playing games? Ah, you'll never be a good modder if you get involved in actually playing them!


#3 Theo

Theo

    Hey look, im a VIP.

  • Members
  • 222 posts
  • Location:Sheffield, Uk,
  • Projects:Being lazy.

Posted 06 May 2006 - 03:12 PM

nope adding that doesnt make a difference make sue you have WildBalrog in your playertemplate.ini

#4 LegolasPrime

LegolasPrime
  • New Members
  • 37 posts

Posted 06 May 2006 - 03:54 PM

I do have Wild Balrog in my playertemplate for Goblins ( I got rid of Shelob), Would I have to add anything to the commandButton.ini, this is my code for that:
CommandButton Command_ConstructWildBalrog
	Command				= UNIT_BUILD
	Object				= WildBalrog
	Options				= CANCELABLE
	TextLabel			= CONTROLBAR:ConstructWildBalrog
	ButtonImage			= HPBalrog
	ButtonBorderType	  = BUILD
	DescriptLabel	  = CONTROLBAR:ToolTipConstructWildBalrog
	Radial		 		= Yes
	InPalantir			= Yes
	ShowProductionCount	= Yes
End


#5 zimoo

zimoo

    Ecthelion of the Fountain

  • Project Team
  • 2,009 posts
  • Location:Devon, England
  • Projects:Lurking until the off topic begins...
  •  Guardian of the Books

Posted 06 May 2006 - 04:27 PM

No you don't need a commandbutton for buidling heros
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image

Playing games? Ah, you'll never be a good modder if you get involved in actually playing them!


#6 Mullers_11

Mullers_11

    Onlooker

  • Project Team
  • 806 posts
  • Location:England
  • Projects:Visions, The Four Ages
  •  Not active

Posted 06 May 2006 - 05:16 PM

Tried building a hero before it? It might free up some space

Retired


#7 Solinx

Solinx

    .

  • Undead
  • 3,101 posts
  • Location:The Netherlands
  • Projects:Real Life
  • Division:Revora
  • Job:Retired Leader / Manager

Posted 06 May 2006 - 05:44 PM

Tried building a hero before it? It might free up some space

I m not sure if I get what you mean, but because he removed Shelob there is room in the commandset for a balrog hero.

Solinx
Posted Image

"An expert is a man who has made all the mistakes which can be made in a very narrow field." - Niels Bohr


#8 Mullers_11

Mullers_11

    Onlooker

  • Project Team
  • 806 posts
  • Location:England
  • Projects:Visions, The Four Ages
  •  Not active

Posted 06 May 2006 - 05:57 PM

So there is, I misread. My apologies.
Going through your problem again, can't see why

Retired


#9 LegolasPrime

LegolasPrime
  • New Members
  • 37 posts

Posted 06 May 2006 - 06:07 PM

is there anything wrong with the code, here it is again

[code=auto:0];------------------------------------------------------------------------------
Object WildBalrog

; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait.
SelectPortrait = HPBalrog

; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage.
ButtonImage = HIBalrog

Draw = W3DScriptedModelDraw ModuleTag_BodyDraw
; GlowEnabled = Yes
; GlowEmissive = Yes

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

OkToChangeModelColor = Yes

ExtraPublicBone = ZZZPASSENGERBON
ExtraPublicBone = ZZZWHIPCOIL
ExtraPublicBone = SWORD

;-------------------------
ModelConditionState = NONE; Not DefaultConditionState, because that keyword copies anything in here to every other state
Model = MUBalrog_SKN
ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingSmokeLite FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingSmokeLite FollowBone:yes
End

; This is triggered by the single player only HitReaction module for the lightningsword
ModelConditionState = HIT_LEVEL_2
Model = MUBalLIT_SKN
End

ModelConditionState = HERO
Model = MUBalIGNT_SKN
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingEmbers FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingEmbers FollowBone:yes

ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = NONE BalrogIgniteHeatWave FollowBone:no
End

;-----------------
IdleAnimationState
StateName = State_Idle
Animation = Breathe
AnimationName = MUBalrog_SKL.MUBalrog_IDLA
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 20
End
Animation = LookAround
AnimationName = MUBalrog_SKL.MUBalrog_IDLB
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 2
End
Animation = SnortLikeABull
AnimationName = MUBalrog_SKL.MUBalrog_IDLC
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 1
End

BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "State_JustBuilt"
then CurDrawableSetTransitionAnimState("TRANS_JustBuilt_To_Idle")
end
if Prev == "State_AboutToHitGround"
then CurDrawableSetTransitionAnimState("TRANS_AboutToHitGround_To_Idle")
end
EndScript
End

AnimationState = DYING DEATH_1
Animation = Dying
AnimationName = MUBalrog_SKL.MUBalrog_DIEA
AnimationMode = ONCE
End
ParticleSysBone = None BalrogFallDust FollowBone:No
End

AnimationState = DYING DEATH_2
Animation = FadingOut
AnimationName = MUBalrog_SKL.MUBalrog_RORC
AnimationMode = ONCE
End
End


; This is triggered by the single player only HitReaction module for the lightningsword
; It is highest instead of lowest priority, because the hit reaction Paralyzes us, where for others it is just a fancy idle.
AnimationState = HIT_LEVEL_2
Animation = Owowowowowowowow
AnimationName = MUBalrog_SKL.MUBalrog_HITB
AnimationMode = ONCE
End
End

AnimationState = EATING
Animation = DoingHorribleThingToGrabbedGuy
AnimationName = MUBalrog_SKL.MUBalrog_BRNA
AnimationMode = ONCE
AnimationBlendTime = 0
End

ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames2 FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlamesFinal FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSqueezeFlash FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSmoke FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAsh FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAshSmall FollowBone:Yes
End

AnimationState = UNPACKING PACKING_TYPE_3
Animation = GrabbingToTouching
AnimationName = MUBalrog_SKL.MUBalrog_GRBA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = PACKING PACKING_TYPE_3
Animation = GrabbingFollowThrough
AnimationName = MUBalrog_SKL.MUBalrog_GRBC
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = JUST_BUILT
StateName = State_JustBuilt
Animation
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = MANUAL
AnimationBlendTime = 0
End
End

TransitionState = TRANS_JustBuilt_To_Idle
Animation = BeingSummoned
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = ONCE
End
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalrog_SKL.MUBalrog_WIPA
AnimationMode = ONCE
End
ParticleSysBone = RTHANDBONE BalrogWhip2swordEfx FollowBone:Yes
End

AnimationState = SPECIAL_POWER_1
Animation = RoaringFear
AnimationName = MUBalrog_SKL.MUBalrog_RORB
AnimationMode = ONCE
End
ParticleSysBone = BAT_JAW BalrogScreamEffect FollowBone:Yes
FXEvent = Frame:20 Name:FX_BalrogScreamEfx
ParticleSysBone = BAT_JAW balrogPixelDisplScrm FollowBone:Yes
ParticleSysBone = BAT_JAW balrogScrmEmbers FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_ONE
Animation = BreathingFireAnimation
AnimationName = MUBalrog_SKL.MUBalrog_FIRA
AnimationMode = ONCE
End
;This is Balrog's fire breath efx
ParticleSysBone = BAT_JAW balrogFireBreath FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathEmbers FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathSmoke FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathProxy FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_TWO UNPACKING
StateName = State_LeapStart
Animation = GettingReadyToLeap
AnimationName = MUBalrog_SKL.MUBalrog_JMP1
AnimationMode = ONCE
End
End

AnimationState = SPECIAL_WEAPON_TWO PACKING
Animation = FirstWingBeatGoingUp
AnimationName = MUBalrog_SKL.MUBalrog_JMP2
AnimationMode = ONCE
End
End

AnimationState = ABOUT_TO_HIT; Before ThrownProjectile, since by definition this set for nn frames while T_P is still on
StateName = State_AboutToHitGround
Animation = StartingToLandToTouchingGround
AnimationName = MUBalrog_SKL.MUBalrog_LND1
AnimationMode = ONCE
End
End

AnimationState = THROWN_PROJECTILE
Animation = HurtlingThroughAir
AnimationName = MUBalrog_SKL.MUBalrog_FLYA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

TransitionState = TRANS_AboutToHitGround_To_Idle
Animation = SplashAtEndOfJump
AnimationName = MUBalrog_SKL.MUBalrog_LND2
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = TURN_RIGHT
Animation = TurningRight
AnimationName = MUBalrog_SKL.MUBalrog_TRNA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = TURN_LEFT
Animation = TurningLeft
AnimationName = MUBalrog_SKL.MUBalrog_TRNB
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = MOVING
Animation = Running
AnimationName = MUBalrog_SKL.MUBalrog_WLKA
AnimationMode = LOOP
AnimationBlendTime = 10
End
Flags = RANDOMSTART

FXEvent = Frame:20 FireWhenSkipped Name:FX_BalrogRightFootStep
FXEvent = Frame:44 FireWhenSkipped Name:FX_BalrogLeftFootStep
End

AnimationState = WEAPONSET_HERO_MODE UNPACKING PACKING_TYPE_1
Animation = StartIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTA
AnimationMode = ONCE
End
End

AnimationState = HERO PACKING PACKING_TYPE_1
Animation = FinishIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTB
AnimationMode = ONCE
End

EnteringStateFX = FX_BalrogIgniteStart
End

AnimationState = FIRING_OR_PREATTACK_A
Animation = Swipe
AnimationName = MUBalrog_SKL.MUBalrog_ATKB
AnimationMode = ONCE
UseWeaponTiming = Yes
End
End

AnimationState = FIRING_OR_PREATTACK_C
Animation = Chop
AnimationName = MUBalrog_SKL.MUBalrog_ATKA
AnimationMode = ONCE
UseWeaponTiming = Yes
End
ParticleSysBone = SWORDBONE BalrogSword FollowBone:yes
End
End

;--------------------------
Draw = W3DScriptedModelDraw ModuleTag_WhipDraw
GlowEnabled = Yes
GlowEmissive = Yes
ShadowForceDisable = Yes;The shadow setting is for the whole drawable, but this individual draw module wants to not have a shadow.

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

DefaultModelConditionState
Model = None
End

ModelConditionState = FIRING_OR_PREATTACK_B
Model = MUBalsWhip_SKN
End

;------------------
IdleAnimationState
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalsWhip_SKL.MUBalsWhip_WIPA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End
WadingParticleSys = BalrogRiverSteam
End

; ***DESIGN parameters ***
DisplayName = OBJECT:WildBalrog
;//DisplayMeleeDamage = BALROG_DAMAGE_DISPLAY

Side = Wild
EditorSorting = UNIT
ThreatLevel = 4.0
ThingClass = CHARACTER_UNIT
CrusherLevel = 4;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
CrushWeapon = BalrogCrush

TransportSlotCount = TRANSPORTSLOTCOUNT_MONSTER

WeaponSet
Conditions = None
Weapon = PRIMARY MordorBalrogSwordSwipe
Weapon = SECONDARY MordorBalrogWhip
Weapon = TERTIARY MordorBalrogSwordChop

AutoChooseSources = SECONDARY None
OnlyAgainst = TERTIARY STRUCTURE BIG_MONSTER
End

ArmorSet
Conditions = None
Armor = BalrogArmor
DamageFX = NormalDamageFX
End

VisionRange = VISION_BALROG
ShroudClearingRange = SHROUD_CLEAR_BALROG

DisplayName = OBJECT:WildBalrog
ShockwaveResistance = SHOCKWAVE_RESISTANCE_ALWAYS
CommandSet = WildBalrogCommandSet
CanPathThroughGates = No
IsTrainable = Yes

DeadCollideSize = LARGE; How big does the AOD consider this unit for damage fx & behavior.


;------------------ AUDIO Parameters ----------------------

VoiceAttack = BalrogVoiceAttack
VoiceAttackCharge = BalrogVoiceAttack
VoiceAttackMachine = BalrogVoiceAttack
VoiceAttackStructure = BalrogVoiceAttack
VoiceGuard = BalrogVoiceMove
VoiceMove = BalrogVoiceMove
VoiceSelect = BalrogVoiceSelect
VoiceSelectBattle = BalrogVoiceSelect

SoundAmbient = BalrogAmbientLoop
SoundImpact = ImpactHorse

#include "..\includes\StandardUnitEvaEvents.inc"

; Warn the player when the enemy gets a unit. Override the normal sighting event from StandardUnitEvaEvents.inc
EvaEnemyObjectSightedEvent = DiscoveredEnemyBalrog

ClientUpdate = EvaAnnounceClientCreate ModuleTag_CreateAnnounce
AnnouncementEventEnemy = DiscoveredEnemyBalrog
AnnouncementEventAlly = None
AnnouncementEventOwner = None

OnlyIfVisible = Yes; Don't announce if hidden in the shroud
CountAsFirstSightedAnnoucement = Yes; Don't re-annouce if going into shroud & back
UseObjectsPosition = No; Play from central Fortress, not at unit's position
CreateFakeRadarEvent = Yes; Allow player to jump to unit after hearing annoucement
End

ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
MaxUpdateRangeCap = 800
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_WLKA Frames: 42 17
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNA Frames: 21 52
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNB Frames: 21 52

AnimationSound = Sound: BalrogWhipPart1 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 1
AnimationSound = Sound: BalrogWhipPart2 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 21
AnimationSound = Sound: ImpactWhipCrack Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 34

AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKB Frames: 32
AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKA Frames: 32
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKA Frames:41
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKB Frames:40
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKC Frames:27 53 88

AnimationSound = Sound: BalrogJump_Part1 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 0
AnimationSound = Sound: BalrogJump_Part2 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 41
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_FLYA Frames: 9
AnimationSound = Sound: BalrogLand Animation: MUBalrog_SKL.MUBalrog_LND1 Frames: 0
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_JMP2 Frames: 0
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 6
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 27

AnimationSound = Sound: BalrogBreathFireExhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 31
AnimationSound = Sound: BalrogBreathFireInhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 0

AnimationSound = Sound: BalrogRoar Animation: MUBalrog_SKL.MUBalrog_RORB Frames: 25
AnimationSound = Sound: BalrogVanquishedRoar Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 21
AnimationSound = Sound: BalrogVanquished Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 50

AnimationSound = Sound: BalrogInjuredB_Part1 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 0
AnimationSound = Sound: BalrogInjuredB_Part2 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 70

AnimationSound = Sound: BalrogChuckle Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 1
AnimationSound = Sound: BalrogContentVox Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 0
AnimationSound = Sound: BalrogIdleB_Part1 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 0
AnimationSound = Sound: BalrogIdleB_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 37
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 95
AnimationSound = Sound: BalrogIdleC_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 29
AnimationSound = Sound: BalrogIdleC_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 60
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 61

AnimationSound = Sound: BalrogDieVox Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 13
AnimationSound = Sound: BalrogBodyfall1 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 56
AnimationSound = Sound: BalrogBodyfall2 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 57
AnimationSound = Sound: OliphantFall Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 21
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 54

AnimationSound = Sound: BalrogIgnite Animation: MUBalrog_SKL.MUBalrog_IGNTA Frames: 51
End


; *** ENGINEERING Parameters ***

RadarPriority = UNIT
KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS MONSTER SCORE CAN_ATTACK NO_FREEWILL_ENTER PATH_THROUGH_INFANTRY SCARY BIG_MONSTER CAN_ATTACK_WALLS SUMMONED
ThreatBreakdown MordorBalrog_DetailedThreat
AIKindOf = SIEGEWEAPON
End

Body = RespawnBody ModuleTag_RespawnBody
CheerRadius = EMOTION_CHEER_RADIUS
MaxHealth = 10000
PermanentlyKilledByFilter = NONE
DodgePercent = HERO_DODGE_PERCENT
End
Behavior = RespawnUpdate ModuleTag_RespawnUpdate
DeathAnim = DYING
DeathFX = FX_EomerDieToRespawn
DeathAnimationTime = 3333
InitialSpawnFX = FX_EomerInitialSpawn
RespawnAnim = LEVELED
RespawnFX = FX_EomerRespawn
RespawnAnimationTime = 2000
AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP
ButtonImage = HIEomer

RespawnRules = AutoSpawn:No Cost:700 Time:90000 Health:100%
RespawnEntry = Level:2 Cost:800 Time:90000
RespawnEntry = Level:3 Cost:900 Time:90000
RespawnEntry = Level:4 Cost:1000 Time:90000
RespawnEntry = Level:5 Cost:1100 Time:120000
RespawnEntry = Level:6 Cost:1300 Time:120000
RespawnEntry = Level:7 Cost:1400 Time:120000
RespawnEntry = Level:8 Cost:1500 Time:120000
RespawnEntry = Level:9 Cost:1600 Time:120000
RespawnEntry = Level:10 Cost:1700 Time:120000
End

Behavior = StancesBehavior ModuleTag_StancesBehavior
StanceTemplate = FighterHorde
End

Behavior = AIUpdateInterface ModuleTag_03
AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS
MoodAttackCheckRate = 500
AILuaEventsList = BalrogFunctions
End

LocomotorSet
Locomotor = BalrogLocomotor
Condition = SET_NORMAL
Speed = 50
End

Behavior = BezierProjectileBehavior ModuleTag_Projectile; Module starts asleep, and wakes up when thrown.
; To tweak a Bezier path
FirstHeight = 104; Height of Bezier control points above highest intervening terrain
SecondHeight = 52
FirstPercentIndent = 20%; Percentage of shot distance control points are placed
SecondPercentIndent = 70%
TumbleRandomly = Yes

CrushStyle = Yes; I don't detonate, I just hit

BounceCount = 0; When I hit the ground, I'll arc again

FinalStuckTime = 1766; Can't move for this long afterwards

GroundHitFX = FX_BalrogJumpHitGround
GroundHitWeapon = RohanGimliLeapWarhead

PreLandingStateTime = 300; Look ahead to the end of the arc, and get the ABOUT_TO_HIT flag this far in advance
End

Behavior = PhysicsBehavior ModuleTag_04
GravityMult = 1.0
End

Behavior = FireWeaponUpdate FireWeaponUpdateModuleTag
FireWeaponNugget
WeaponName = MordorBalrogHeroEffect
FireDelay = 0
OneShot = No
End
HeroModeTrigger = Yes; this only happens when hero mode is active
End

Behavior = SlowDeathBehavior ModuleTag_05
DeathTypes = ALL -FADED
DestructionDelay = 2500
FX = FINAL FX_BalrogFinalDeath
DeathFlags = DEATH_1
End

Behavior = SlowDeathBehavior ModuleTag_FadeDeath
DeathTypes = NONE +FADED
FX = INITIAL FX_BalrogUnsummonInitial
DestructionDelay = 3800
FX = FINAL FX_BalrogUnsummonFinal
DeathFlags = DEATH_2
End

Behavior = SpecialPowerModule ModuleTag_IgniteStarter
SpecialPowerTemplate = SpecialAbilityHeroMode
UpdateModuleStartsAttack = Yes
;InitiateSound =
End
Behavior = HeroModeSpecialAbilityUpdate ModuleTag_IgniteUpdate
SpecialPowerTemplate = SpecialAbilityHeroMode
UnpackingVariation = 1

UnpackTime = 1800
PackTime = 1600

AwardXPForTriggering = 0

HeroAttributeModifier = BalrogIgniteState
HeroEffectDuration = 30000
End

Behavior = SpecialPowerModule ModuleTag_ScreamStarter
SpecialPowerTemplate = SpecialAbilityBalrogScream
UpdateModuleStartsAttack = Yes
;InitiateSound =
End
Behavior = ModelConditionSpecialAbilityUpdate ModuleTag_ScreamUpdate; So the difference in SpecialPower is that it takes timing from this UpdateG, instead of simply firing.
SpecialPowerTemplate = SpecialAbilityBalrogScream

UnpackTime = 1500; Drawing the horn
PreparationTime = 1; nothing
PackTime = 1800; Putting horn away

AwardXPForTriggering = 0

WhichSpecialPower = 1
End

Behavior = SpecialPowerModule ModuleTag_BreathStarter
SpecialPowerTemplate = SpecialAbilityBalrogBreath
UpdateModuleStartsAttack = Yes
InitiateSound = BalrogSpecialPowerRoar;this plays on right-click target, not when Balrog leaps
End

Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_BreathUpdate
SpecialPowerTemplate = SpecialAbilityBalrogBreath

UnpackTime = 1300; Drawing the horn
PackTime = 3700; Putting horn away

AwardXPForTriggering = 0

StartAbilityRange = 40.0

SpecialWeapon = MordorBalrogBreath
WhichSpecialWeapon = 1
End

Behavior = SpecialPowerModule ModuleTag_LeapStarter
SpecialPowerTemplate = SpecialAbilityBalrogWings
UpdateModuleStartsAttack = Yes
InitiateSound = BalrogSpecialPowerRoar;this plays on right-click target, not when Balrog leaps
End

Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_LeapUpdate
SpecialPowerTemplate = SpecialAbilityBalrogWings

UnpackTime = 1733; Drawing the horn
PackTime = 1160; Putting horn away

AwardXPForTriggering = 0

StartAbilityRange = 800.0
ApproachRequiresLOS = No
SpecialWeapon = MordorBalrogLeap
BusyForDuration = 3000; don't accept any AI for this long... ai commands will be queued
WhichSpecialWea;------------------------------------------------------------------------------
Object WildBalrog

; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait.
SelectPortrait = HPBalrog

; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage.
ButtonImage = HIBalrog

Draw = W3DScriptedModelDraw ModuleTag_BodyDraw
; GlowEnabled = Yes
; GlowEmissive = Yes

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

OkToChangeModelColor = Yes

ExtraPublicBone = ZZZPASSENGERBON
ExtraPublicBone = ZZZWHIPCOIL
ExtraPublicBone = SWORD

;-------------------------
ModelConditionState = NONE; Not DefaultConditionState, because that keyword copies anything in here to every other state
Model = MUBalrog_SKN
ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingSmokeLite FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingSmokeLite FollowBone:yes
End

; This is triggered by the single player only HitReaction module for the lightningsword
ModelConditionState = HIT_LEVEL_2
Model = MUBalLIT_SKN
End

ModelConditionState = HERO
Model = MUBalIGNT_SKN
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingEmbers FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingEmbers FollowBone:yes

ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = NONE BalrogIgniteHeatWave FollowBone:no
End

;-----------------
IdleAnimationState
StateName = State_Idle
Animation = Breathe
AnimationName = MUBalrog_SKL.MUBalrog_IDLA
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 20
End
Animation = LookAround
AnimationName = MUBalrog_SKL.MUBalrog_IDLB
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 2
End
Animation = SnortLikeABull
AnimationName = MUBalrog_SKL.MUBalrog_IDLC
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 1
End

BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "State_JustBuilt"
then CurDrawableSetTransitionAnimState("TRANS_JustBuilt_To_Idle")
end
if Prev == "State_AboutToHitGround"
then CurDrawableSetTransitionAnimState("TRANS_AboutToHitGround_To_Idle")
end
EndScript
End

AnimationState = DYING DEATH_1
Animation = Dying
AnimationName = MUBalrog_SKL.MUBalrog_DIEA
AnimationMode = ONCE
End
ParticleSysBone = None BalrogFallDust FollowBone:No
End

AnimationState = DYING DEATH_2
Animation = FadingOut
AnimationName = MUBalrog_SKL.MUBalrog_RORC
AnimationMode = ONCE
End
End


; This is triggered by the single player only HitReaction module for the lightningsword
; It is highest instead of lowest priority, because the hit reaction Paralyzes us, where for others it is just a fancy idle.
AnimationState = HIT_LEVEL_2
Animation = Owowowowowowowow
AnimationName = MUBalrog_SKL.MUBalrog_HITB
AnimationMode = ONCE
End
End

AnimationState = EATING
Animation = DoingHorribleThingToGrabbedGuy
AnimationName = MUBalrog_SKL.MUBalrog_BRNA
AnimationMode = ONCE
AnimationBlendTime = 0
End

ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames2 FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlamesFinal FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSqueezeFlash FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSmoke FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAsh FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAshSmall FollowBone:Yes
End

AnimationState = UNPACKING PACKING_TYPE_3
Animation = GrabbingToTouching
AnimationName = MUBalrog_SKL.MUBalrog_GRBA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = PACKING PACKING_TYPE_3
Animation = GrabbingFollowThrough
AnimationName = MUBalrog_SKL.MUBalrog_GRBC
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = JUST_BUILT
StateName = State_JustBuilt
Animation
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = MANUAL
AnimationBlendTime = 0
End
End

TransitionState = TRANS_JustBuilt_To_Idle
Animation = BeingSummoned
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = ONCE
End
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalrog_SKL.MUBalrog_WIPA
AnimationMode = ONCE
End
ParticleSysBone = RTHANDBONE BalrogWhip2swordEfx FollowBone:Yes
End

AnimationState = SPECIAL_POWER_1
Animation = RoaringFear
AnimationName = MUBalrog_SKL.MUBalrog_RORB
AnimationMode = ONCE
End
ParticleSysBone = BAT_JAW BalrogScreamEffect FollowBone:Yes
FXEvent = Frame:20 Name:FX_BalrogScreamEfx
ParticleSysBone = BAT_JAW balrogPixelDisplScrm FollowBone:Yes
ParticleSysBone = BAT_JAW balrogScrmEmbers FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_ONE
Animation = BreathingFireAnimation
AnimationName = MUBalrog_SKL.MUBalrog_FIRA
AnimationMode = ONCE
End
;This is Balrog's fire breath efx
ParticleSysBone = BAT_JAW balrogFireBreath FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathEmbers FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathSmoke FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathProxy FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_TWO UNPACKING
StateName = State_LeapStart
Animation = GettingReadyToLeap
AnimationName = MUBalrog_SKL.MUBalrog_JMP1
AnimationMode = ONCE
End
End

AnimationState = SPECIAL_WEAPON_TWO PACKING
Animation = FirstWingBeatGoingUp
AnimationName = MUBalrog_SKL.MUBalrog_JMP2
AnimationMode = ONCE
End
End

AnimationState = ABOUT_TO_HIT; Before ThrownProjectile, since by definition this set for nn frames while T_P is still on
StateName = State_AboutToHitGround
Animation = StartingToLandToTouchingGround
AnimationName = MUBalrog_SKL.MUBalrog_LND1
AnimationMode = ONCE
End
End

AnimationState = THROWN_PROJECTILE
Animation = HurtlingThroughAir
AnimationName = MUBalrog_SKL.MUBalrog_FLYA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

TransitionState = TRANS_AboutToHitGround_To_Idle
Animation = SplashAtEndOfJump
AnimationName = MUBalrog_SKL.MUBalrog_LND2
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = TURN_RIGHT
Animation = TurningRight
AnimationName = MUBalrog_SKL.MUBalrog_TRNA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = TURN_LEFT
Animation = TurningLeft
AnimationName = MUBalrog_SKL.MUBalrog_TRNB
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = MOVING
Animation = Running
AnimationName = MUBalrog_SKL.MUBalrog_WLKA
AnimationMode = LOOP
AnimationBlendTime = 10
End
Flags = RANDOMSTART

FXEvent = Frame:20 FireWhenSkipped Name:FX_BalrogRightFootStep
FXEvent = Frame:44 FireWhenSkipped Name:FX_BalrogLeftFootStep
End

AnimationState = WEAPONSET_HERO_MODE UNPACKING PACKING_TYPE_1
Animation = StartIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTA
AnimationMode = ONCE
End
End

AnimationState = HERO PACKING PACKING_TYPE_1
Animation = FinishIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTB
AnimationMode = ONCE
End

EnteringStateFX = FX_BalrogIgniteStart
End

AnimationState = FIRING_OR_PREATTACK_A
Animation = Swipe
AnimationName = MUBalrog_SKL.MUBalrog_ATKB
AnimationMode = ONCE
UseWeaponTiming = Yes
End
End

AnimationState = FIRING_OR_PREATTACK_C
Animation = Chop
AnimationName = MUBalrog_SKL.MUBalrog_ATKA
AnimationMode = ONCE
UseWeaponTiming = Yes
End
ParticleSysBone = SWORDBONE BalrogSword FollowBone:yes
End
End

;--------------------------
Draw = W3DScriptedModelDraw ModuleTag_WhipDraw
GlowEnabled = Yes
GlowEmissive = Yes
ShadowForceDisable = Yes;The shadow setting is for the whole drawable, but this individual draw module wants to not have a shadow.

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

DefaultModelConditionState
Model = None
End

ModelConditionState = FIRING_OR_PREATTACK_B
Model = MUBalsWhip_SKN
End

;------------------
IdleAnimationState
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalsWhip_SKL.MUBalsWhip_WIPA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End
WadingParticleSys = BalrogRiverSteam
End

; ***DESIGN parameters ***
DisplayName = OBJECT:WildBalrog
;//DisplayMeleeDamage = BALROG_DAMAGE_DISPLAY

Side = Wild
EditorSorting = UNIT
ThreatLevel = 4.0
ThingClass = CHARACTER_UNIT
CrusherLevel = 4;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
CrushWeapon = BalrogCrush

TransportSlotCount = TRANSPORTSLOTCOUNT_MONSTER

WeaponSet
Conditions = None
Weapon = PRIMARY MordorBalrogSwordSwipe
Weapon = SECONDARY MordorBalrogWhip
Weapon = TERTIARY MordorBalrogSwordChop

AutoChooseSources = SECONDARY None
OnlyAgainst = TERTIARY STRUCTURE BIG_MONSTER
End

ArmorSet
Conditions = None
Armor = BalrogArmor
DamageFX = NormalDamageFX
End

VisionRange = VISION_BALROG
ShroudClearingRange = SHROUD_CLEAR_BALROG

DisplayName = OBJECT:WildBalrog
ShockwaveResistance = SHOCKWAVE_RESISTANCE_ALWAYS
CommandSet = WildBalrogCommandSet
CanPathThroughGates = No
IsTrainable = Yes

DeadCollideSize = LARGE; How big does the AOD consider this unit for damage fx & behavior.


;------------------ AUDIO Parameters ----------------------

VoiceAttack = BalrogVoiceAttack
VoiceAttackCharge = BalrogVoiceAttack
VoiceAttackMachine = BalrogVoiceAttack
VoiceAttackStructure = BalrogVoiceAttack
VoiceGuard = BalrogVoiceMove
VoiceMove = BalrogVoiceMove
VoiceSelect = BalrogVoiceSelect
VoiceSelectBattle = BalrogVoiceSelect

SoundAmbient = BalrogAmbientLoop
SoundImpact = ImpactHorse

#include "..\includes\StandardUnitEvaEvents.inc"

; Warn the player when the enemy gets a unit. Override the normal sighting event from StandardUnitEvaEvents.inc
EvaEnemyObjectSightedEvent = DiscoveredEnemyBalrog

ClientUpdate = EvaAnnounceClientCreate ModuleTag_CreateAnnounce
AnnouncementEventEnemy = DiscoveredEnemyBalrog
AnnouncementEventAlly = None
AnnouncementEventOwner = None

OnlyIfVisible = Yes; Don't announce if hidden in the shroud
CountAsFirstSightedAnnoucement = Yes; Don't re-annouce if going into shroud & back
UseObjectsPosition = No; Play from central Fortress, not at unit's position
CreateFakeRadarEvent = Yes; Allow player to jump to unit after hearing annoucement
End

ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
MaxUpdateRangeCap = 800
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_WLKA Frames: 42 17
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNA Frames: 21 52
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNB Frames: 21 52

AnimationSound = Sound: BalrogWhipPart1 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 1
AnimationSound = Sound: BalrogWhipPart2 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 21
AnimationSound = Sound: ImpactWhipCrack Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 34

AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKB Frames: 32
AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKA Frames: 32
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKA Frames:41
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKB Frames:40
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKC Frames:27 53 88

AnimationSound = Sound: BalrogJump_Part1 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 0
AnimationSound = Sound: BalrogJump_Part2 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 41
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_FLYA Frames: 9
AnimationSound = Sound: BalrogLand Animation: MUBalrog_SKL.MUBalrog_LND1 Frames: 0
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_JMP2 Frames: 0
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 6
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 27

AnimationSound = Sound: BalrogBreathFireExhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 31
AnimationSound = Sound: BalrogBreathFireInhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 0

AnimationSound = Sound: BalrogRoar Animation: MUBalrog_SKL.MUBalrog_RORB Frames: 25
AnimationSound = Sound: BalrogVanquishedRoar Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 21
AnimationSound = Sound: BalrogVanquished Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 50

AnimationSound = Sound: BalrogInjuredB_Part1 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 0
AnimationSound = Sound: BalrogInjuredB_Part2 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 70

AnimationSound = Sound: BalrogChuckle Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 1
AnimationSound = Sound: BalrogContentVox Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 0
AnimationSound = Sound: BalrogIdleB_Part1 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 0
AnimationSound = Sound: BalrogIdleB_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 37
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 95
AnimationSound = Sound: BalrogIdleC_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 29
AnimationSound = Sound: BalrogIdleC_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 60
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 61

AnimationSound = Sound: BalrogDieVox Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 13
AnimationSound = Sound: BalrogBodyfall1 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 56
AnimationSound = Sound: BalrogBodyfall2 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 57
AnimationSound = Sound: OliphantFall Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 21
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 54

AnimationSound = Sound: BalrogIgnite Animation: MUBalrog_SKL.MUBalrog_IGNTA Frames: 51
End


; *** ENGINEERING Parameters ***

RadarPriority = UNIT
KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS MONSTER SCORE CAN_ATTACK NO_FREEWILL_ENTER PATH_THROUGH_INFANTRY SCARY BIG_MONSTER CAN_ATTACK_WALLS SUMMONED
ThreatBreakdown MordorBalrog_DetailedThreat
AIKindOf = SIEGEWEAPON
End

Body = RespawnBody ModuleTag_RespawnBody
CheerRadius = EMOTION_CHEER_RADIUS
MaxHealth = 10000
PermanentlyKilledByFilter = NONE
DodgePercent = HERO_DODGE_PERCENT
End
Behavior = RespawnUpdate ModuleTag_RespawnUpdate
DeathAnim = DYING
DeathFX = FX_EomerDieToRespawn
DeathAnimationTime = 3333
InitialSpawnFX = FX_EomerInitialSpawn
RespawnAnim = LEVELED
RespawnFX = FX_EomerRespawn
RespawnAnimationTime = 2000
AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP
ButtonImage = HIEomer

RespawnRules = AutoSpawn:No Cost:700 Time:90000 Health:100%
RespawnEntry = Level:2 Cost:800 Time:90000
RespawnEntry = Level:3 Cost:900 Time:90000
RespawnEntry = Level:4 Cost:1000 Time:90000
RespawnEntry = Level:5 Cost:1100 Time:120000
RespawnEntry = Level:6 Cost:1300 Time:120000
RespawnEntry = Level:7 Cost:1400 Time:120000
RespawnEntry = Level:8 Cost:1500 Time:120000
RespawnEntry = Level:9 Cost:1600 Time:120000
RespawnEntry = Level:10 Cost:1700 Time:120000
End

Behavior = StancesBehavior ModuleTag_StancesBehavior
StanceTemplate = FighterHorde
End

Behavior = AIUpdateInterface ModuleTag_03
AutoAcquireEnemiesWhenIdle = Yes ATTACK_BUILDINGS
MoodAttackCheckRate = 500
AILuaEventsList = BalrogFunctions
End

LocomotorSet
Locomotor = BalrogLocomotor
Condition = SET_NORMAL
Speed = 50
End

Behavior = BezierProjectileBehavior ModuleTag_Projectile; Module starts asleep, and wakes up when thrown.
; To tweak a Bezier path
FirstHeight = 104; Height of Bezier control points above highest intervening terrain
SecondHeight = 52
FirstPercentIndent = 20%; Percentage of shot distance control points are placed
SecondPercentIndent = 70%
TumbleRandomly = Yes

CrushStyle = Yes; I don't detonate, I just hit

BounceCount = 0; When I hit the ground, I'll arc again

FinalStuckTime = 1766; Can't move for this long afterwards

GroundHitFX = FX_BalrogJumpHitGround
GroundHitWeapon = RohanGimliLeapWarhead

PreLandingStateTime = 300; Look ahead to the end of the arc, and get the ABOUT_TO_HIT flag this far in advance
End

Behavior = PhysicsBehavior ModuleTag_04
GravityMult = 1.0
End

Behavior = FireWeaponUpdate FireWeaponUpdateModuleTag
FireWeaponNugget
WeaponName = MordorBalrogHeroEffect
FireDelay = 0
OneShot = No
End
HeroModeTrigger = Yes; this only happens when hero mode is active
End

Behavior = SlowDeathBehavior ModuleTag_05
DeathTypes = ALL -FADED
DestructionDelay = 2500
FX = FINAL FX_BalrogFinalDeath
DeathFlags = DEATH_1
End

Behavior = SlowDeathBehavior ModuleTag_FadeDeath
DeathTypes = NONE +FADED
FX = INITIAL FX_BalrogUnsummonInitial
DestructionDelay = 3800
FX = FINAL FX_BalrogUnsummonFinal
DeathFlags = DEATH_2
End

Behavior = SpecialPowerModule ModuleTag_IgniteStarter
SpecialPowerTemplate = SpecialAbilityHeroMode
UpdateModuleStartsAttack = Yes
;InitiateSound =
End
Behavior = HeroModeSpecialAbilityUpdate ModuleTag_IgniteUpdate
SpecialPowerTemplate = SpecialAbilityHeroMode
UnpackingVariation = 1

UnpackTime = 1800
PackTime = 1600

AwardXPForTriggering = 0

HeroAttributeModifier = BalrogIgniteState
HeroEffectDuration = 30000
End

Behavior = SpecialPowerModule ModuleTag_ScreamStarter
SpecialPowerTemplate = SpecialAbilityBalrogScream
UpdateModuleStartsAttack = Yes
;InitiateSound =
End
Behavior = ModelConditionSpecialAbilityUpdate ModuleTag_ScreamUpdate; So the difference in SpecialPower is that it takes timing from this UpdateG, instead of simply firing.
SpecialPowerTemplate = SpecialAbilityBalrogScream

UnpackTime = 1500; Drawing the horn
PreparationTime = 1; nothing
PackTime = 1800; Putting horn away

AwardXPForTriggering = 0

WhichSpecialPower = 1
End

Behavior = SpecialPowerModule ModuleTag_BreathStarter
SpecialPowerTemplate = SpecialAbilityBalrogBreath
UpdateModuleStartsAttack = Yes
InitiateSound = BalrogSpecialPowerRoar;this plays on right-click target, not when Balrog leaps
End

Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_BreathUpdate
SpecialPowerTemplate = SpecialAbilityBalrogBreath

UnpackTime = 1300; Drawing the horn
PackTime = 3700; Putting horn away

AwardXPForTriggering = 0

StartAbilityRange = 40.0

SpecialWeapon = MordorBalrogBreath
WhichSpecialWeapon = 1
End

Behavior = SpecialPowerModule ModuleTag_LeapStarter
SpecialPowerTemplate = SpecialAbilityBalrogWings
UpdateModuleStartsAttack = Yes
InitiateSound = BalrogSpecialPowerRoar;this plays on right-click target, not when Balrog leaps
End

Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_LeapUpdate
SpecialPowerTemplate = SpecialAbilityBalrogWings

UnpackTime = 1733; Drawing the horn
PackTime = 1160; Putting horn away

AwardXPForTriggering = 0

StartAbilityRange = 800.0
ApproachRequiresLOS = No
SpecialWeapon = MordorBalrogLeap
BusyForDuration = 3000; don't accept any AI for this long... ai commands will be queued
WhichSpecialWea;------------------------------------------------------------------------------
Object WildBalrog

; *** ART Parameters ***
; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait.
SelectPortrait = HPBalrog

; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage.
ButtonImage = HIBalrog

Draw = W3DScriptedModelDraw ModuleTag_BodyDraw
; GlowEnabled = Yes
; GlowEmissive = Yes

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

OkToChangeModelColor = Yes

ExtraPublicBone = ZZZPASSENGERBON
ExtraPublicBone = ZZZWHIPCOIL
ExtraPublicBone = SWORD

;-------------------------
ModelConditionState = NONE; Not DefaultConditionState, because that keyword copies anything in here to every other state
Model = MUBalrog_SKN
ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingSmokeLite FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingSmokeLite FollowBone:yes
End

; This is triggered by the single player only HitReaction module for the lightningsword
ModelConditionState = HIT_LEVEL_2
Model = MUBalLIT_SKN
End

ModelConditionState = HERO
Model = MUBalIGNT_SKN
ParticleSysBone = MANEBONE BalrogManeFlare FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeEmbers FollowBone:yes
ParticleSysBone = MANEBONE BalrogManeFire FollowBone:yes
ParticleSysBone = RTWINGBONE BalrogWingEmbers FollowBone:yes
ParticleSysBone = LFWINGBONE BalrogWingEmbers FollowBone:yes

ParticleSysBone = SWORD BalrogSwordFlare FollowBone:yes; Not SWORDBONE, because SWORD is the bone that gets art-hidden mid animation in WIPX
ParticleSysBone = SWORD BalrogSwordEmbers FollowBone:yes
ParticleSysBone = NONE BalrogIgniteHeatWave FollowBone:no
End

;-----------------
IdleAnimationState
StateName = State_Idle
Animation = Breathe
AnimationName = MUBalrog_SKL.MUBalrog_IDLA
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 20
End
Animation = LookAround
AnimationName = MUBalrog_SKL.MUBalrog_IDLB
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 2
End
Animation = SnortLikeABull
AnimationName = MUBalrog_SKL.MUBalrog_IDLC
AnimationMode = ONCE
AnimationBlendTime = 10
AnimationPriority = 1
End

BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "State_JustBuilt"
then CurDrawableSetTransitionAnimState("TRANS_JustBuilt_To_Idle")
end
if Prev == "State_AboutToHitGround"
then CurDrawableSetTransitionAnimState("TRANS_AboutToHitGround_To_Idle")
end
EndScript
End

AnimationState = DYING DEATH_1
Animation = Dying
AnimationName = MUBalrog_SKL.MUBalrog_DIEA
AnimationMode = ONCE
End
ParticleSysBone = None BalrogFallDust FollowBone:No
End

AnimationState = DYING DEATH_2
Animation = FadingOut
AnimationName = MUBalrog_SKL.MUBalrog_RORC
AnimationMode = ONCE
End
End


; This is triggered by the single player only HitReaction module for the lightningsword
; It is highest instead of lowest priority, because the hit reaction Paralyzes us, where for others it is just a fancy idle.
AnimationState = HIT_LEVEL_2
Animation = Owowowowowowowow
AnimationName = MUBalrog_SKL.MUBalrog_HITB
AnimationMode = ONCE
End
End

AnimationState = EATING
Animation = DoingHorribleThingToGrabbedGuy
AnimationName = MUBalrog_SKL.MUBalrog_BRNA
AnimationMode = ONCE
AnimationBlendTime = 0
End

ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlames2 FollowBone:Yes
ParticleSysBone = ZZZPassengerBon balrogHandSqueezeFlamesFinal FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSqueezeFlash FollowBone:Yes
ParticleSysBone = ZZZPassengerBon BalrogHandSmoke FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAsh FollowBone:Yes
ParticleSysBone = RING_2_L balrogHandAshSmall FollowBone:Yes
End

AnimationState = UNPACKING PACKING_TYPE_3
Animation = GrabbingToTouching
AnimationName = MUBalrog_SKL.MUBalrog_GRBA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = PACKING PACKING_TYPE_3
Animation = GrabbingFollowThrough
AnimationName = MUBalrog_SKL.MUBalrog_GRBC
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = JUST_BUILT
StateName = State_JustBuilt
Animation
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = MANUAL
AnimationBlendTime = 0
End
End

TransitionState = TRANS_JustBuilt_To_Idle
Animation = BeingSummoned
AnimationName = MUBalrog_SKL.MUBalrog_RORA
AnimationMode = ONCE
End
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalrog_SKL.MUBalrog_WIPA
AnimationMode = ONCE
End
ParticleSysBone = RTHANDBONE BalrogWhip2swordEfx FollowBone:Yes
End

AnimationState = SPECIAL_POWER_1
Animation = RoaringFear
AnimationName = MUBalrog_SKL.MUBalrog_RORB
AnimationMode = ONCE
End
ParticleSysBone = BAT_JAW BalrogScreamEffect FollowBone:Yes
FXEvent = Frame:20 Name:FX_BalrogScreamEfx
ParticleSysBone = BAT_JAW balrogPixelDisplScrm FollowBone:Yes
ParticleSysBone = BAT_JAW balrogScrmEmbers FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_ONE
Animation = BreathingFireAnimation
AnimationName = MUBalrog_SKL.MUBalrog_FIRA
AnimationMode = ONCE
End
;This is Balrog's fire breath efx
ParticleSysBone = BAT_JAW balrogFireBreath FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathEmbers FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathSmoke FollowBone:Yes
ParticleSysBone = BAT_JAW balrogBreathProxy FollowBone:Yes
End

AnimationState = SPECIAL_WEAPON_TWO UNPACKING
StateName = State_LeapStart
Animation = GettingReadyToLeap
AnimationName = MUBalrog_SKL.MUBalrog_JMP1
AnimationMode = ONCE
End
End

AnimationState = SPECIAL_WEAPON_TWO PACKING
Animation = FirstWingBeatGoingUp
AnimationName = MUBalrog_SKL.MUBalrog_JMP2
AnimationMode = ONCE
End
End

AnimationState = ABOUT_TO_HIT; Before ThrownProjectile, since by definition this set for nn frames while T_P is still on
StateName = State_AboutToHitGround
Animation = StartingToLandToTouchingGround
AnimationName = MUBalrog_SKL.MUBalrog_LND1
AnimationMode = ONCE
End
End

AnimationState = THROWN_PROJECTILE
Animation = HurtlingThroughAir
AnimationName = MUBalrog_SKL.MUBalrog_FLYA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

TransitionState = TRANS_AboutToHitGround_To_Idle
Animation = SplashAtEndOfJump
AnimationName = MUBalrog_SKL.MUBalrog_LND2
AnimationMode = ONCE
AnimationBlendTime = 0
End
End

AnimationState = TURN_RIGHT
Animation = TurningRight
AnimationName = MUBalrog_SKL.MUBalrog_TRNA
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = TURN_LEFT
Animation = TurningLeft
AnimationName = MUBalrog_SKL.MUBalrog_TRNB
AnimationMode = LOOP
AnimationBlendTime = 10
End
End

AnimationState = MOVING
Animation = Running
AnimationName = MUBalrog_SKL.MUBalrog_WLKA
AnimationMode = LOOP
AnimationBlendTime = 10
End
Flags = RANDOMSTART

FXEvent = Frame:20 FireWhenSkipped Name:FX_BalrogRightFootStep
FXEvent = Frame:44 FireWhenSkipped Name:FX_BalrogLeftFootStep
End

AnimationState = WEAPONSET_HERO_MODE UNPACKING PACKING_TYPE_1
Animation = StartIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTA
AnimationMode = ONCE
End
End

AnimationState = HERO PACKING PACKING_TYPE_1
Animation = FinishIgniteRoar
AnimationName = MUBalrog_SKL.MUBalrog_IGNTB
AnimationMode = ONCE
End

EnteringStateFX = FX_BalrogIgniteStart
End

AnimationState = FIRING_OR_PREATTACK_A
Animation = Swipe
AnimationName = MUBalrog_SKL.MUBalrog_ATKB
AnimationMode = ONCE
UseWeaponTiming = Yes
End
End

AnimationState = FIRING_OR_PREATTACK_C
Animation = Chop
AnimationName = MUBalrog_SKL.MUBalrog_ATKA
AnimationMode = ONCE
UseWeaponTiming = Yes
End
ParticleSysBone = SWORDBONE BalrogSword FollowBone:yes
End
End

;--------------------------
Draw = W3DScriptedModelDraw ModuleTag_WhipDraw
GlowEnabled = Yes
GlowEmissive = Yes
ShadowForceDisable = Yes;The shadow setting is for the whole drawable, but this individual draw module wants to not have a shadow.

; StaticModelLODMode = yes; Will append M or L to the skin name depending on GameLOD

DefaultModelConditionState
Model = None
End

ModelConditionState = FIRING_OR_PREATTACK_B
Model = MUBalsWhip_SKN
End

;------------------
IdleAnimationState
End

AnimationState = FIRING_OR_PREATTACK_B
Animation = CrackThatWhip
AnimationName = MUBalsWhip_SKL.MUBalsWhip_WIPA
AnimationMode = ONCE
AnimationBlendTime = 0
End
End
WadingParticleSys = BalrogRiverSteam
End

; ***DESIGN parameters ***
DisplayName = OBJECT:WildBalrog
;//DisplayMeleeDamage = BALROG_DAMAGE_DISPLAY

Side = Wild
EditorSorting = UNIT
ThreatLevel = 4.0
ThingClass = CHARACTER_UNIT
CrusherLevel = 4;What can I crush?: 1 = infantry, 2 = trees, 3 = vehicles
CrushWeapon = BalrogCrush

TransportSlotCount = TRANSPORTSLOTCOUNT_MONSTER

WeaponSet
Conditions = None
Weapon = PRIMARY MordorBalrogSwordSwipe
Weapon = SECONDARY MordorBalrogWhip
Weapon = TERTIARY MordorBalrogSwordChop

AutoChooseSources = SECONDARY None
OnlyAgainst = TERTIARY STRUCTURE BIG_MONSTER
End

ArmorSet
Conditions = None
Armor = BalrogArmor
DamageFX = NormalDamageFX
End

VisionRange = VISION_BALROG
ShroudClearingRange = SHROUD_CLEAR_BALROG

DisplayName = OBJECT:WildBalrog
ShockwaveResistance = SHOCKWAVE_RESISTANCE_ALWAYS
CommandSet = WildBalrogCommandSet
CanPathThroughGates = No
IsTrainable = Yes

DeadCollideSize = LARGE; How big does the AOD consider this unit for damage fx & behavior.


;------------------ AUDIO Parameters ----------------------

VoiceAttack = BalrogVoiceAttack
VoiceAttackCharge = BalrogVoiceAttack
VoiceAttackMachine = BalrogVoiceAttack
VoiceAttackStructure = BalrogVoiceAttack
VoiceGuard = BalrogVoiceMove
VoiceMove = BalrogVoiceMove
VoiceSelect = BalrogVoiceSelect
VoiceSelectBattle = BalrogVoiceSelect

SoundAmbient = BalrogAmbientLoop
SoundImpact = ImpactHorse

#include "..\includes\StandardUnitEvaEvents.inc"

; Warn the player when the enemy gets a unit. Override the normal sighting event from StandardUnitEvaEvents.inc
EvaEnemyObjectSightedEvent = DiscoveredEnemyBalrog

ClientUpdate = EvaAnnounceClientCreate ModuleTag_CreateAnnounce
AnnouncementEventEnemy = DiscoveredEnemyBalrog
AnnouncementEventAlly = None
AnnouncementEventOwner = None

OnlyIfVisible = Yes; Don't announce if hidden in the shroud
CountAsFirstSightedAnnoucement = Yes; Don't re-annouce if going into shroud & back
UseObjectsPosition = No; Play from central Fortress, not at unit's position
CreateFakeRadarEvent = Yes; Allow player to jump to unit after hearing annoucement
End

ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
MaxUpdateRangeCap = 800
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_WLKA Frames: 42 17
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNA Frames: 21 52
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_TRNB Frames: 21 52

AnimationSound = Sound: BalrogWhipPart1 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 1
AnimationSound = Sound: BalrogWhipPart2 Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 21
AnimationSound = Sound: ImpactWhipCrack Animation: MUBalrog_SKL.MUBalrog_WIPA Frames: 34

AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKB Frames: 32
AnimationSound = Sound: BalrogSwordSwipe Animation: MUBalrog_SKL.MUBalrog_ATKA Frames: 32
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKA Frames:41
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKB Frames:40
AnimationSound = Sound: ImpactBalrogAttackGeneric Animation: MUBalrog_SKL.MUBalrog_ATKC Frames:27 53 88

AnimationSound = Sound: BalrogJump_Part1 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 0
AnimationSound = Sound: BalrogJump_Part2 Animation: MUBalrog_SKL.MUBalrog_JMP1 Frames: 41
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_FLYA Frames: 9
AnimationSound = Sound: BalrogLand Animation: MUBalrog_SKL.MUBalrog_LND1 Frames: 0
AnimationSound = Sound: BalrogWingFlaps Animation: MUBalrog_SKL.MUBalrog_JMP2 Frames: 0
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 6
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_LND2 Frames: 27

AnimationSound = Sound: BalrogBreathFireExhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 31
AnimationSound = Sound: BalrogBreathFireInhale Animation: MUBalrog_SKL.MUBalrog_FIRA Frames: 0

AnimationSound = Sound: BalrogRoar Animation: MUBalrog_SKL.MUBalrog_RORB Frames: 25
AnimationSound = Sound: BalrogVanquishedRoar Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 21
AnimationSound = Sound: BalrogVanquished Animation: MUBalrog_SKL.MUBalrog_RORC Frames: 50

AnimationSound = Sound: BalrogInjuredB_Part1 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 0
AnimationSound = Sound: BalrogInjuredB_Part2 Animation: MUBalrog_SKL.MUBalrog_HITB Frames: 70

AnimationSound = Sound: BalrogChuckle Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 1
AnimationSound = Sound: BalrogContentVox Animation: MUBalrog_SKL.MUBalrog_IDLA Frames: 0
AnimationSound = Sound: BalrogIdleB_Part1 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 0
AnimationSound = Sound: BalrogIdleB_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 37
AnimationSound = Sound: BalrogIdleB_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLB Frames: 95
AnimationSound = Sound: BalrogIdleC_Part2 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 29
AnimationSound = Sound: BalrogIdleC_Part3 Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 60
AnimationSound = Sound: BalrogFootstep Animation: MUBalrog_SKL.MUBalrog_IDLC Frames: 61

AnimationSound = Sound: BalrogDieVox Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 13
AnimationSound = Sound: BalrogBodyfall1 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 56
AnimationSound = Sound: BalrogBodyfall2 Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 57
AnimationSound = Sound: OliphantFall Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 21
AnimationSound = Sound: BalrogLandSwordHit Animation: MUBalrog_SKL.MUBalrog_DIEA Frames: 54

AnimationSound = Sound: BalrogIgnite Animation: MUBalrog_SKL.MUBalrog_IGNTA Frames: 51
End


; *** ENGINEERING Parameters ***

RadarPriority = UNIT
KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS MONSTER SCORE CAN_ATTACK NO_FREEWILL_ENTER PATH_THROUGH_INFANTRY SCARY BIG_MONSTER CAN_ATTACK_WALLS SUMMONED
ThreatBreakdown MordorBalrog_DetailedThreat
AIKindOf = SIEGEWEAPON
End

Body = RespawnBody ModuleTag_RespawnBody
CheerRadius = EMOTION_CHEER_RADIUS
MaxHealth = 10000
PermanentlyKilledByFilter = NONE
DodgePercent = HERO_DODGE_PERCENT
End
Behavior = RespawnUpdate ModuleTag_RespawnUpdate
DeathAnim = DYING
DeathFX = FX_EomerDieToRespawn
DeathAnimationTime = 3333
InitialSpawnFX = FX_EomerInitialSpawn
RespawnAnim = LEVELED
RespawnFX = FX_EomerRespawn
RespawnAnimationTime = 2000
AutoRespawnAtObjectFilter = NONE +CASTLE_KEEP
ButtonImage = HIEomer

RespawnRules = AutoSpawn:No Cost:700 Time:90000 Health:100%
RespawnEntry = Level:2 Cost:800 Time:90000
RespawnEntry = Level:3 Cost:900 Time:90000

#10 zimoo

zimoo

    Ecthelion of the Fountain

  • Project Team
  • 2,009 posts
  • Location:Devon, England
  • Projects:Lurking until the off topic begins...
  •  Guardian of the Books

Posted 06 May 2006 - 06:18 PM

I'm not sure if it'd work while SUMMONABLE is in his KINDOF, but then again I may be wrong
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image

Playing games? Ah, you'll never be a good modder if you get involved in actually playing them!


#11 Kwen

Kwen

    Vileartist

  • T3A Staff
  • 4,865 posts
  • Location:Korea I wish
  • Projects:It'sa secreeet
  •  T3A's First N00b
  • Division:BFME
  • Job:T3A Expert
  • Donated

Posted 06 May 2006 - 07:32 PM

use (codebox) instead of (code) when posting long bits of code like that

                           https://www.twitch.tv/vileartist - Yes shameless self-promotion

          ----------------------------------------------------------------------------------------------------------------------

                            "Old modders never die, they just fade away" ~ Hostile


#12 LegolasPrime

LegolasPrime
  • New Members
  • 37 posts

Posted 07 May 2006 - 07:48 PM

Nevermind, I just decided to make the regular balrog a hero and replace his Summon Power with the dragonstrike. I have another problem though, when i made the dragon and the balrog heroes, I replaced ther Sciene button with the Dragon Strike and Rain Of Fire. But whenever I play, it won't let me purchase them, do I have to edit more than just the commandset?

#13 zimoo

zimoo

    Ecthelion of the Fountain

  • Project Team
  • 2,009 posts
  • Location:Devon, England
  • Projects:Lurking until the off topic begins...
  •  Guardian of the Books

Posted 07 May 2006 - 07:51 PM

You also have to change the power in science.ini
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image

Playing games? Ah, you'll never be a good modder if you get involved in actually playing them!





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users