Jump to content


Photo

Saruman Word of power Not Working


  • Please log in to reply
30 replies to this topic

#1 Matt Waller

Matt Waller

    I'm the person stood behind you ...........

  • Hosted
  • 123 posts
  • Location:England
  • Projects:Halo: The Untold Wars (Ghyver) + Second Age: The Forging (Founder)
  •  The Fanatic

Posted 15 June 2008 - 08:59 AM

I've been trying for about a week to get Saruman to use word of power. I used:

Commandbutton
CommandSet
ExperienceLevels
Saruman's ini
SpecialPowers
Weapon
Gamedata

But in-game the power appears greyed out even at the right level. Here is the code I edited:

Command Button:

CommandButton Command_SarumanSpecialAbilityWordOfPower
	Command			   = SPECIAL_POWER 
	SpecialPower	   = SpecialAbilitySarumanWordOfPower
//	Options			   = 
	TextLabel		   = CONTROLBAR:CAHWordofPower
	ButtonImage		   = Gandolf_radcircle
	ButtonBorderType   = ACTION	
	DescriptLabel	   = CONTROLBAR:ToolTipWordofPower_CAH
	AutoAbility		   = Yes
	PresetRange		   = 120.0
//	UnitSpecificSound  = 
	InPalantir		   = Yes
End

Command set:

CommandSet SarumanCommandSet 
	
	1	= Command_SpecialAbilityIsengardWizardBlast
	2	= Command_SarumanFireball
	3	= Command_SarumanSpecialAbilityWordOfPower;;
	4	= Command_SpecialAbilitySpeechCraft;;
	5	= Command_SpecialAbilityDominateEnemy;;
	6	= Command_SarumanThunderBolt
	12	= Command_CaptureBuilding
	13	= Command_AttackMove
	14	= Command_Stop
End

Experience Levels:

ExperienceLevel	SarumanLevel3
	TargetNames					= IsengardSaruman

	RequiredExperience				= SARUMAN_LVL3_EXP_NEEDED 
	ExperienceAward					= SARUMAN_LVL3_EXP_AWARD
	Upgrades					= Upgrade_SarumanWordofPower	

	AttributeModifiers				= HeroLevelUpDamage2
	Rank						= 3
	LevelUpFx					= FX:GandalfLevelUp1FX
	SelectionDecal
		Texture					= decal_hero_evil
		Style					= SHADOW_ALPHA_DECAL
		OpacityMin				= 50%	
		OpacityMax				= 100%
		MinRadius				= 40
		MaxRadius				= 200
		MaxSelectedUnits			= 40
	End	
END

Saruman's ini:

;;; WORD OF POWER ANIMS ON FOOT;;;
		AnimationState		=  SPECIAL_WEAPON_ONE
			StateName = Attacking
			Animation
				AnimationName		   = GUGandalfG_SKL.GUGandalfG_SPCK
				AnimationMode	   = ONCE
			End
			FXEvent			= Frame:5 Name:FX_GandalfPreAttackBlast
		End


(then a bit further down)


;;; WORD OF POWER;;;

	Behavior = UnpauseSpecialPowerUpgrade ModuleTag_WordEnabler
		SpecialPowerTemplate = SpecialAbilitySarumanWordOfPower
		TriggeredBy			 = Upgrade_SarumanWordOfPower
	End

	Behavior = SpecialPowerModule ModuleTag_WordStarter	   
		SpecialPowerTemplate	  = SpecialAbilitySarumanWordOfPower
		UpdateModuleStartsAttack  = Yes
		StartsPaused				= Yes
	End

	Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_WordWeaponFireUpdate   
		SpecialPowerTemplate	   = SpecialAbilitySarumanWordOfPower
		WhichSpecialWeapon		   = 1
		SkipContinue			   = Yes
		UnpackTime				   = 1700 
		PackTime				   = 1	   
		FreezeAfterTriggerDuration = 2500 // Hold AI for this long after we	fire.
		AwardXPForTriggering	   = 0	   
		StartAbilityRange		   = 180.0
		SpecialWeapon			   = SarumanWordOfPower
	End

Special Powers:

//-----------------------------------------------------------------------------------------------------------------------------------------
// WORD OF POWER SPECIAL POWER
//-----------------------------------------------------------------------------------------------------------------------------------------
SpecialPower SpecialAbilitySarumanWordOfPower
	Enum						   = SPECIAL_WORD_OF_POWER
	ReloadTime					   	= 360000
	PublicTimer					   = No
End

Weapon:

;------------------------------------------------------------------------------
Weapon SarumanWordOfPower; Big Blue Ring Blast
	IdleAfterFiringDelay = 0
	AttackRange = SARUMAN_WORD_OF_POWER_RANGE
	MinimumAttackRange = 0.8
	WeaponSpeed = 401		; dist/sec 
	MinWeaponSpeed = 241
	MaxWeaponSpeed = 601	 ; dist/sec Upper limit on scaling, when attacking past nominal "max" range
	ScaleWeaponSpeed = Yes; Used for lob weapons, scales speed proportional to range
	RadiusDamageAffects = ENEMIES NOT_SIMILAR
	DelayBetweenShots = 5000			  ; time between shots, msec
	PreAttackDelay		= 2600
	PreAttackType		 = PER_ATTACK; Do the delay each time we attack a new target
	PreAttackFX		   = FX_GandalfPreAttackBlastReal
	FireFX				= FX_GandalfBlast
	FiringDuration	  = 1400
	DamageNugget					   ; A basic Nugget that just does damage
		Damage			= SARUMAN_WORD_OF_POWER_DAMAGE
		Radius			= 250.0
		DamageType		= MAGIC
		DamageFXType	= MAGIC
		DeathType		= EXPLODED
		DamageSpeed		= 700.0; must match the ShockWaveSpeed below
	End
	MetaImpactNugget				   ; A Nugget that throws things back with force
;		HeroResist			= .75
		ShockWaveAmount   = 75.0
		ShockWaveRadius   = 500.0
		ShockWaveTaperOff = 1.0
		ShockWaveZMult	= 1.000
		ShockWaveSpeed	  = 700.0 
	End
End

Gamedata:

;-----------------------Saruman------------------
#define SARUMAN_BUILDCOST				3000
#define SARUMAN_BUILDTIME				70;; 45
#define SARUMAN_HEALTH					3000

#define	SARUMAN_LVL1_EXP_AWARD 				35
#define	SARUMAN_LVL2_EXP_AWARD 				40
#define	SARUMAN_LVL3_EXP_AWARD 				45
#define	SARUMAN_LVL4_EXP_AWARD 				50
#define	SARUMAN_LVL5_EXP_AWARD 				60
#define	SARUMAN_LVL6_EXP_AWARD 				75
#define	SARUMAN_LVL7_EXP_AWARD 				90
#define	SARUMAN_LVL8_EXP_AWARD 				105
#define	SARUMAN_LVL9_EXP_AWARD 				125
#define	SARUMAN_LVL10_EXP_AWARD 			150

#define	SARUMAN_LVL2_EXP_NEEDED 			90;60;; 100
#define	SARUMAN_LVL3_EXP_NEEDED 			180;200;; 200
#define	SARUMAN_LVL4_EXP_NEEDED 			270;400;; 300
#define	SARUMAN_LVL5_EXP_NEEDED 			700;600;; 500
#define	SARUMAN_LVL6_EXP_NEEDED 			1130;800;; 700
#define	SARUMAN_LVL7_EXP_NEEDED 			1560;1000;; 900
#define	SARUMAN_LVL8_EXP_NEEDED 			2110;1200;; 1100
#define	SARUMAN_LVL9_EXP_NEEDED 			2660;1600;; 1500
#define	SARUMAN_LVL10_EXP_NEEDED 			3210;2000;; 2000

#define SARUMAN_PREATTACKDELAY 				1100
#define SARUMAN_DELAYBETWEENSHOTS 			1000
#define SARUMAN_FIRINGDURATION 				1566
#define	SARUMAN_DAMAGE					250;; 100

#define	SARUMAN_FORCE_ATTACK_DAMAGE			500

#define	SARUMAN_FIREBALL_DAMAGE				400
#define	SARUMAN_FIREBALL_DAMAGE_SIEGE			400
#define SARUMAN_FIREBALL_RADIUS				30.0
#define SARUMAN_FIREBALL_RANGE				300;; 250
#define SARUMAN_FIREBALL_RELOAD_TIME			60000

#define	SARUMAN_LIGHTNING_DAMAGE			1000
#define	SARUMAN_LIGHTNING_DAMAGE_FLAME		 	2000
#define	SARUMAN_LIGHTNING_RANGE				 	300
#define	SARUMAN_LIGHTNING_RADIUS			 	50

#define	SARUMAN_WORD_OF_POWER_DAMAGE			500
#define	SARUMAN_WORD_OF_POWER_RANGE			120

Please help quickly!
Posted Image

I kill who I want when I want......... watch your back........

Posted Image

#2 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 15 June 2008 - 09:51 AM

First of all, that animation thing you added wont work, Its using GANDALF's skeleton!
And what about the upgrade.ini?

Special Powers:
//-----------------------------------------------------------------------------------------------------------------------------------------
// WORD OF POWER SPECIAL POWER
//-----------------------------------------------------------------------------------------------------------------------------------------
SpecialPower SpecialAbilitySarumanWordOfPower
	Enum						   = SPECIAL_WORD_OF_POWER
	ReloadTime						   = 360000
	///PublicTimer					   = No ///<----WHATS UP WITH THAT? its not in the original move so why add it here?
End

Ridder Geel

#3 Matt Waller

Matt Waller

    I'm the person stood behind you ...........

  • Hosted
  • 123 posts
  • Location:England
  • Projects:Halo: The Untold Wars (Ghyver) + Second Age: The Forging (Founder)
  •  The Fanatic

Posted 15 June 2008 - 11:03 AM

I forgot to post the upgrade thing :

Upgrade:

Upgrade Upgrade_SarumanWordOfPower
  Type			  = OBJECT
End


I'll try the skeleton thing see if it works
Posted Image

I kill who I want when I want......... watch your back........

Posted Image

#4 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 15 June 2008 - 11:06 AM

Don't forget to also change the special power thing, that might be the most likely cause!
Ridder Geel

#5 Matt Waller

Matt Waller

    I'm the person stood behind you ...........

  • Hosted
  • 123 posts
  • Location:England
  • Projects:Halo: The Untold Wars (Ghyver) + Second Age: The Forging (Founder)
  •  The Fanatic

Posted 15 June 2008 - 11:18 AM

still doesn't work. It's just greyed out so I can't use it.
Posted Image

I kill who I want when I want......... watch your back........

Posted Image

#6 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 15 June 2008 - 11:21 AM

recheck your entire Experience code and your hero's ini for small mistakes that could cause this error.

also recheck if all the names are spelled correctly.
Ridder Geel

#7 Matt Waller

Matt Waller

    I'm the person stood behind you ...........

  • Hosted
  • 123 posts
  • Location:England
  • Projects:Halo: The Untold Wars (Ghyver) + Second Age: The Forging (Founder)
  •  The Fanatic

Posted 15 June 2008 - 12:09 PM

It would help to have a second check from someone. I'm willing to send whole ini if someone needs it. I've checked it 100's of times but to be honest I wouldn't know a technical mistake if I saw one.
Posted Image

I kill who I want when I want......... watch your back........

Posted Image

#8 Lurtzy

Lurtzy

    Forerunner

  • Project Team
  • 1,169 posts
  • Location:DeLand, Florida, USA
  • Projects:Returning to modding

Posted 15 June 2008 - 02:43 PM

This may sound like a stupid question, but, did you get saruman to level 3 and it was still greyed out?

Edited by Lurtz101, 15 June 2008 - 02:43 PM.

Trying to hold on...


#9 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 15 June 2008 - 05:58 PM

he said Yes a few posts ago, so i assume he levels saruman to lvl 3 every time he checks ^_^

oh ya and matt, you can send me the code, ill have a look.
Ridder Geel

#10 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 17 June 2008 - 01:13 PM

I fixed it and PM'd u the code :p
Ridder Geel

#11 Lurtzy

Lurtzy

    Forerunner

  • Project Team
  • 1,169 posts
  • Location:DeLand, Florida, USA
  • Projects:Returning to modding

Posted 17 June 2008 - 02:50 PM

Hurray! Good work once again Ridder and congratulations on being hosted!

Trying to hold on...


#12 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 17 June 2008 - 03:19 PM

I'm happy too that i managed to fix this problem
Ridder Geel

#13 Guest_Omer Ahiskalioglu_*

Guest_Omer Ahiskalioglu_*
  • Guests

Posted 04 May 2012 - 07:00 AM

I got problems on saruman.ini. I just get the Unknown Block AnimationState error then crash to desktop.I only copied the code to saruman.ini.The other codes worked good and i tried to open the game without saruman.ini and WOP was there but not usable.Where did I failed? Please Help!

#14 Dovakhin

Dovakhin
  • Members
  • 46 posts

Posted 27 May 2012 - 01:44 PM

I'm happy too that i managed to fix this problem

I'm happy too that i managed to fix this problem


How did you explain? I did all of the above is still gray.

#15 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 28 May 2012 - 12:48 AM

It has been quite a while... Currently i have no time to help you any more than give you the exact same codes i gave to matt.
Using these are fairly much a guarentee to it working.
The important part is the saruman.ini i suppose, i advise copying it entirely since I cannot pinpoint what point exactly is important...
Good luck!


commandbutton.ini
CommandButton Command_SarumanSpecialAbilityWordOfPower
    Command               = SPECIAL_POWER
    SpecialPower       = SpecialAbilitySarumanWordOfPower
    TextLabel           = CONTROLBAR:CAHWordofPower
    ButtonImage           = Gandolf_radcircle
    ButtonBorderType   = ACTION    
    DescriptLabel       = CONTROLBAR:ToolTipWordofPower_CAH
    AutoAbility           = Yes
    PresetRange           = 120.0
    InPalantir           = Yes
End

commandset.ini
CommandSet SarumanCommandSet
    
    1    = Command_SpecialAbilityIsengardWizardBlast
    2    = Command_SarumanFireball
    3    = Command_SarumanSpecialAbilityWordOfPower
    4    = Command_SpecialAbilitySpeechCraft ; ;
    5    = Command_SpecialAbilityDominateEnemy ; ;
    6    = Command_SarumanThunderBolt
    12    = Command_CaptureBuilding
    13    = Command_AttackMove
    14    = Command_Stop
End

experiencelevels.ini
;----------- SARUMAN ------------------    
ExperienceLevel    SarumanLevel1
    TargetNames                    = IsengardSaruman
    RequiredExperience                = 1    
    ExperienceAward                    = SARUMAN_LVL1_EXP_AWARD
    Rank                        = 1
    SelectionDecal
        Texture                    = decal_hero_evil    
        Style                    = SHADOW_ALPHA_DECAL
        OpacityMin                = 50%    
        OpacityMax                = 100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits            = 40
    End    
End    

ExperienceLevel    SarumanLevel2
    TargetNames                    = IsengardSaruman

    RequiredExperience                = SARUMAN_LVL2_EXP_NEEDED  
    ExperienceAward                    = SARUMAN_LVL2_EXP_AWARD
    Upgrades                    = Upgrade_SarumanFireBall    
    
    AttributeModifiers                = HeroLevelUpDamage1
    Rank                        = 2
    LevelUpFx                    = FX:GandalfLevelUp1FX
    SelectionDecal
        Texture                    = decal_hero_evil    
        Style                    = SHADOW_ALPHA_DECAL
        OpacityMin                = 50%    
        OpacityMax                = 100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits            = 40
    End    
END    

ExperienceLevel    SarumanLevel3
    TargetNames                    = IsengardSaruman

    RequiredExperience                = SARUMAN_LVL3_EXP_NEEDED
    ExperienceAward                    = SARUMAN_LVL3_EXP_AWARD
    Upgrades                    =    Upgrade_SarumanWordofPower
    
    AttributeModifiers                = HeroLevelUpDamage2
    Rank                        = 3
    LevelUpFx                    = FX:GandalfLevelUp1FX    
    SelectionDecal
        Texture                    = decal_hero_evil
        Style                    = SHADOW_ALPHA_DECAL
        OpacityMin                = 50%    
        OpacityMax                = 100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits            = 40
    End    
END    

ExperienceLevel    SarumanLevel4
    TargetNames                    = IsengardSaruman
    RequiredExperience                = SARUMAN_LVL4_EXP_NEEDED  
    ExperienceAward                    = SARUMAN_LVL4_EXP_AWARD    
    AttributeModifiers                = HeroLevelUpDamage3
    Rank                        = 4
    LevelUpFx                    = FX:GandalfLevelUp1FX
; ;    Upgrades                    = Upgrade_SarumanDominate
    
    SelectionDecal
        Texture                    = decal_hero_evil
        Style                    = SHADOW_ALPHA_DECAL
        OpacityMin                = 50%    
        OpacityMax                = 100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits        = 40
    End    
END    

ExperienceLevel    SarumanLevel5
    TargetNames                    = IsengardSaruman
    RequiredExperience            = SARUMAN_LVL5_EXP_NEEDED  
    ExperienceAward                = SARUMAN_LVL5_EXP_AWARD    
    AttributeModifiers            = HeroLevelUpDamage4
    Rank                        = 5
    LevelUpFx                    = FX:GandalfLevelUp1FX
    Upgrades                    = Upgrade_SarumanSpeechCraft
    SelectionDecal
        Texture                    = decal_hero_evil
        Style                    = SHADOW_ALPHA_DECAL
        OpacityMin                = 50%    
        OpacityMax                = 100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits        = 40
    End    
END    

ExperienceLevel    SarumanLevel6
    TargetNames                = IsengardSaruman
    RequiredExperience    = SARUMAN_LVL6_EXP_NEEDED  
    ExperienceAward          =    SARUMAN_LVL6_EXP_AWARD    
    AttributeModifiers    = HeroLevelUpDamage5
    Rank                        = 6
    LevelUpFx                  =    FX:GandalfLevelUp1FX
    
    SelectionDecal
        Texture                    = decal_hero_evil
        Style                      =    SHADOW_ALPHA_DECAL
        OpacityMin              =    50%    
        OpacityMax              =    100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits    = 40
    End    
END    

ExperienceLevel    SarumanLevel7
    TargetNames                = IsengardSaruman
    RequiredExperience    = SARUMAN_LVL7_EXP_NEEDED  
    ExperienceAward          =    SARUMAN_LVL7_EXP_AWARD    
    AttributeModifiers    = HeroLevelUpDamage6
    Rank                        = 7
    LevelUpFx                  =    FX:GandalfLevelUp1FX
    SelectionDecal
        Texture                    = decal_hero_evil
        Style                      =    SHADOW_ALPHA_DECAL

        OpacityMin              =    50%    
        OpacityMax              =    100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits    = 40
    End    
END    

ExperienceLevel    SarumanLevel8
    TargetNames                = IsengardSaruman
    RequiredExperience    = SARUMAN_LVL8_EXP_NEEDED  
    ExperienceAward          =    SARUMAN_LVL8_EXP_AWARD    
    AttributeModifiers    = HeroLevelUpDamage7
    Rank                        = 8
    LevelUpFx                  =    FX:GandalfLevelUp1FX
    Upgrades                    = Upgrade_SarumanDominate ; ;
    SelectionDecal
        Texture                    = decal_hero_evil
        Style                      =    SHADOW_ALPHA_DECAL
        OpacityMin              =    50%    
        OpacityMax              =    100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits    = 40
    End    

END    

ExperienceLevel    SarumanLevel9
    TargetNames                = IsengardSaruman
    RequiredExperience    = SARUMAN_LVL9_EXP_NEEDED  
    ExperienceAward          =    SARUMAN_LVL9_EXP_AWARD    
    AttributeModifiers    = HeroLevelUpDamage8
    Rank                        = 9
    LevelUpFx                  =    FX:GandalfLevelUp1FX
    Upgrades                    =    Upgrade_SarumanThunderBolt
    SelectionDecal
        Texture                    = decal_hero_evil
        Style                      =    SHADOW_ALPHA_DECAL
        OpacityMin              =    50%    
        OpacityMax              =    100%
        MinRadius                = 40
        MaxRadius                = 200
        MaxSelectedUnits    = 40
    End    
END    

ExperienceLevel    SarumanLevel10
    TargetNames                        =    IsengardSaruman
    RequiredExperience                =    SARUMAN_LVL10_EXP_NEEDED
    ExperienceAward                    =    SARUMAN_LVL10_EXP_AWARD  
    AttributeModifiers                =    HeroLevelUpDamage9
    Rank                            =    10
    LevelUpFx                        =    FX:GandalfLevelUp1FX
    SelectionDecal
        Texture                        =    decal_hero_good
        Style                        =    SHADOW_ALPHA_DECAL
        OpacityMin                    =    50%
        OpacityMax                    =    100%
        MinRadius                    =    40
        MaxRadius                    =    200    
        MaxSelectedUnits            =    40
    End    
END    
[/codebox]

gamedata.ini (water.ini or an ini named gamedata.ini in objects folder)
[code]
#define    SARUMAN_WORD_OF_POWER_DAMAGE            1000
#define    SARUMAN_WORD_OF_POWER_RANGE            150
[/code]

saruman.ini
[codebox]
;------------------------------------------------------------------------------
; Saruman
Object IsengardSaruman
    ; *** ART Parameters ***

    ; ButtonImage for Heros is button image on Hero Select UI to select hero. HI = HeroIcon or HeroImage.
    ; This is required for garrisoned objects - please put in all objects.
    ButtonImage = HISaruman
    
    ; SelectPortrait for Heros is portrait behind skill buttons. HP = HeroPortrait.
    SelectPortrait = HPSaruman
    
    DescriptionStrategic = CONTROLBAR:LW_ToolTip_Saruman

    Draw = W3DScriptedModelDraw ModuleTag_DRAW
    
        OkToChangeModelColor = Yes
    
        StaticModelLODMode = yes ; Will append M or L to the skin name depending on GameLOD
        
        ExtraPublicBone = STAFFFX

        DefaultModelConditionState
            Model			   = IUSaruman_SKN
            Skeleton            = IUSaruman_SKL
            WeaponLaunchBone    = PRIMARY STAFFFX
        End
        
        ModelConditionState        = USER_3
            Model			   = IUSaruman_SKN
            WeaponLaunchBone    = PRIMARY STAFFFX  
		    Shadow                = SHADOW_ADDITIVE_DECAL
		    ShadowSizeX            = 200;
		    ShadowSizeY            = 200;
		    ShadowTexture        = EXGandalfGlow;
        End
        
        ; --- Idle Anims
        IdleAnimationState
            StateName = Idle
            Animation = IDLB ; Bored Idle
                AnimationName	   = IUSaruman_IDLB
                AnimationMode	   = ONCE
                AnimationPriority   = 20
            End
            
            Animation = IDLC ; Bored Idle
                AnimationName	   = IUSaruman_IDLC
                AnimationMode	   = ONCE
                AnimationPriority   = 3
            End
            
            Animation = IDLD ; Bored Fidget
                AnimationName	   = IUSaruman_IDLD
                AnimationMode	   = ONCE
                AnimationPriority   = 1
            End

            BeginScript
                Prev = CurDrawablePrevAnimationState()
                if Prev == "Selected" then CurDrawableSetTransitionAnimState("TRANS_Selected_To_Idle") end
            EndScript                        
        End
        
        AnimationState	    = STUNNED_FLAILING
            Flags			   = RANDOMSTART
            Animation		   = FLYA
                AnimationName	 = IUSaruman_FLYA
                AnimationMode	 = LOOP
            End
        End

        ; --- Dying anims
        AnimationState            = DYING BURNINGDEATH
            Animation
                AnimationName    = IUSaruman_DIEB
                AnimationMode    = ONCE
                AnimationBlendTime = 10
            End
        End

        AnimationState	    = DYING SPLATTED
            Animation
                AnimationName	 = IUSaruman_LNDA
                AnimationMode	 = ONCE
            End
        End
        AnimationState	    = DYING AFLAME
            Animation = DieAflame
                AnimationName	 = IUSaruman_MFDA
                AnimationMode	 = LOOP
            End
        End
        AnimationState	    = DYING
            Animation = DieB
                AnimationName	 = IUSaruman_DIEB
                AnimationMode	 = ONCE
            End            
        End
        
        ; --- Stunned anims
        
        AnimationState	    = STUNNED_STANDING_UP
            Animation
                AnimationName	 = IUSaruman_GTPA
                AnimationMode	 = ONCE
                AnimationSpeedFactorRange = 1.5 1.5
            End
        End
        AnimationState	    = STUNNED
            Animation
                AnimationName	 = IUSaruman_LNDA
                AnimationMode	 = ONCE
            End
        End

        AnimationState            = BURNINGDEATH
            Animation
                AnimationName    = IUSaruman_MFDA
                AnimationMode    = LOOP
                Distance        = 50
            End
        End

        AnimationState                        = PARALYZED
            Animation
                AnimationName                = IUSaruman_IDLB
                AnimationMode                = LOOP
            End
        End

        ;;; DOMINATE SPECIAL POWER ;;;
        AnimationState                = PACKING_TYPE_1
            StateName                = Dominate
            Animation
                AnimationName        = IUSaruman_TNTB
                AnimationMode        = ONCE
                AnimationBlendTime  = 5
            End
            FXEvent    = Frame:6    Name: FX_SarumanDominateAtSelf
        End
        
        ;;; SPEECH CRAFT SPECIAL POWER ;;;
        AnimationState                = PACKING_TYPE_2
            StateName                = Spped_Craft
            Animation
                AnimationName        = IUSaruman_TNTB
                AnimationMode        = ONCE
            End
            FXEvent    = Frame:15    Name: FX_SpeechCraft
        End

        ; --- Moving Anims
        
        
         AnimationState = MOVING FIRING_OR_PREATTACK_A
            Animation = TrotAndFire
                AnimationName = IUSaruman_ATRA
                AnimationMode = LOOP
            End
            Flags = RANDOMSTART
            ;ParticleSysBone = None InfantryDustTrails
   	 End
        
        ; This is what happens when Saruman gives uses his speech craft
         AnimationState                = MOVING USING_SPECIAL_ABILITY
             Flags                    = RANDOMSTART
             Animation                = IUSaruman_RUNB
                 AnimationName	 = IUSaruman_RUNB
                 AnimationMode	 = LOOP
             End
         End
         
         
         
         AnimationState            = MOVING BACKING_UP
            Animation            = BackingUp
                AnimationName    = IUSaruman_BAKA
                AnimationMode    = LOOP
            End
            Flags = RANDOMSTART
        End
        
        AnimationState	    = MOVING ATTACKING
             Animation              = IUSaruman_RUNB ;RUNB
                 AnimationName	 = IUSaruman_RUNB
                 AnimationMode	 = LOOP
             End
        End
        
        AnimationState	    = MOVING
             Animation                = IUSaruman_RUNA
                 AnimationName	 = IUSaruman_RUNA
                 AnimationMode	 = LOOP
             End
        End

        ;;; FIRE BALL SPECIAL POWER ;;;
        AnimationState          = SPECIAL_WEAPON_ONE
            Animation                = Throwing Fireball
                AnimationName        = IUSaruman_ATKB
                AnimationMode        = ONCE
            End
            FrameForPristineBonePositions = 27
        End
                          
         ;;; WIZARD BLAST SPECIAL POWER ;;;
         AnimationState	    =  SPECIAL_WEAPON_TWO
            StateName = Attacking
            Animation
                AnimationName	   = IUSaruman_ATKB
                AnimationMode	   = ONCE
            End
            FrameForPristineBonePositions = 27
        End
        
        ;;; LIGHTING BOLT SPECIAL POWER ;;;
        AnimationState          = SPECIAL_WEAPON_THREE
            Animation                = Throwing Fireball
                AnimationName        = IUSaruman_SPCA
                AnimationMode        = ONCE
                UseWeaponTiming        =    Yes
            End
            
            FrameForPristineBonePositions = 48
        End
        
        ;;; WORD OF POWER ANIMS ON FOOT ;;;
        AnimationState	    =  SPECIAL_WEAPON_ONE
            Animation                = Throwing Fireball
                AnimationName		   = IUSaruman_SPCA                
                AnimationMode	       = ONCE
                UseWeaponTiming        =    Yes
            End
            FXEvent            = Frame:5 Name:FX_GandalfPreAttackBlast
        End


        ; --- Attacking Anims [Weapon_A]
        AnimationState	    = FIRING_OR_PREATTACK_A            
            Animation		   = IUSaruman_ATKC
                AnimationName	 = IUSaruman_ATKC
                AnimationMode	 = ONCE
                UseWeaponTiming        =    Yes    
            End
            
            Animation		   = IUSaruman_ATKD
                AnimationName	 = IUSaruman_ATKD
                AnimationMode	 = ONCE
                UseWeaponTiming        =    Yes    
            End            
        End

        AnimationState = WAR_CHANT
            ;Animation = Chant
            ;    AnimationName = IUSaruman_TNTA
            ;    AnimationMode = ONCE
            ;End
            Animation = Chant
                AnimationName = IUSaruman_TNTB
                AnimationMode = LOOP
            End            
        End
        
        AnimationState = EMOTION_TAUNTING
            Animation = Chant
                AnimationName = IUSaruman_TNTA
                AnimationMode = ONCE
            End
            Flags                        = RANDOMSTART RESTART_ANIM_WHEN_COMPLETE
        End

        AnimationState = EMOTION_CELEBRATING
            Animation = Chant
                AnimationName = IUSaruman_TNTB
                AnimationMode = ONCE
            End            
            Flags                        = RANDOMSTART RESTART_ANIM_WHEN_COMPLETE
        End

        ; --------- Click and Hit Reactions ------------
        AnimationState = HIT_REACTION
            Animation = Hit_Level_1_a
                AnimationName = IUSaruman_HITA
                AnimationMode = ONCE
            End
        End
        
        ; ATTACKING
        AnimationState	    = ATTACKING
            Animation		   = ALERT_1
                AnimationName	 = IUSaruman_IDLA
                AnimationMode	 = LOOP
            End
        End
                
        TransitionState                    =    TRANS_Idle_to_Selected
            Animation                    =    ATNA
                AnimationName            =    IUSaruman_ATNA
                AnimationMode            =    ONCE
            End
        End
        
        TransitionState                    =    TRANS_Selected_To_Idle
            Animation                    =    ATND
                AnimationName            =    IUSaruman_ATND
                AnimationMode            =    ONCE
            End
        End

        ; LEVEL Up Anim
        AnimationState	    = LEVELED
            Animation = Yippee
                AnimationName	   = IUSaruman_TNTA
                AnimationMode	   = ONCE
            End
        End

         ; READY IDLE
        AnimationState	    = EMOTION_ALERT
            Animation		   = ALERT_1
                AnimationName	 = IUSaruman_IDLA
                AnimationMode	 = LOOP
            End
        End
        
        AnimationState = RAISING_FLAG
            Animation = Chant
                AnimationName = IUSaruman_TNTA
                AnimationMode = ONCE
            End
            Animation = Chant
                AnimationName = IUSaruman_TNTB
                AnimationMode = ONCE
            End            
            Flags                        = RESTART_ANIM_WHEN_COMPLETE
        End

        AnimationState                =    SELECTED
            StateName                =    Selected
            SimilarRestart            =   Yes            
            Animation                =    ATNB            
                AnimationName        =    IUSaruman_ATNB
                AnimationMode        =    LOOP
                AnimationBlendTime  =   15
            End
            BeginScript
                Prev = CurDrawablePrevAnimationState()
                if Prev == "Idle" then CurDrawableSetTransitionAnimState("TRANS_Idle_to_Selected") end
            EndScript
        End
    End

    #include "..\..\..\includes\StunDrawModuleSmall.inc"

    ; ***DESIGN parameters ***
    Side = Isengard
    EditorSorting = UNIT
    ThreatLevel = SARUMAN_THREAT_LEVEL
    ThingClass = CHARACTER_UNIT
        BuildCost		   = SARUMAN_BUILDCOST                
       BuildTime		   = SARUMAN_BUILDTIME    
    ShockwaveResistance = SHOCKWAVE_RESISTANCE_STRONG
    ;//DisplayMeleeDamage = SARUMAN_DAMAGE
            
    TransportSlotCount = TRANSPORTSLOTCOUNT_HERO
    WeaponSet
        Conditions = None
        Weapon = PRIMARY    SarumanWeapon
        AutoChooseSources = PRIMARY FROM_PLAYER FROM_SCRIPT FROM_AI
    End
    ArmorSet
        Conditions	  = None
        Armor		   = ToughHeroArmor ; ;HeroArmor
        DamageFX	    = NormalDamageFX
    End
    
    VisionRange = VISION_STANDARD_MELEE
        ShroudClearingRange = SHROUD_CLEAR_HERO
    
        MaxVisionBonusPercent = 300%
    VisionBonusTestRadius = 200
    VisionBonusPercentPerFoot = 1.0%

      BountyValue	 = ISENGARD_SARUMAN_BOUNTY_VALUE
    DisplayName        = OBJECT:IsengardSaruman
    RecruitText        = CONTROLBAR:IsengardSarumanRecruit
    ReviveText        = CONTROLBAR:IsengardSarumanRevive
    Hotkey            = CONTROLBAR:IsengardSarumanHotkey
    CrushableLevel    = 2  ;What am I?:	    0 = for infantry, 1 = for trees, 2 = general vehicles
    CrusherLevel = 0 ;What can I crush?: 0 = small animals, 1 = infantry, 2 = trees, 3 = vehicles

    CommandSet = SarumanCommandSet
    CommandPoints = 80 ; ;75


    ; *** AUTO RESOLVE DATA ***
    AutoResolveUnitType = AutoResolveUnit_Hero
    AutoResolveCombatChain = AutoResolve_HeroCombatChain

    AutoResolveBody = AutoResolve_SarumanBody
    
    AutoResolveArmor
        Armor = AutoResolve_SarumanArmor
    End

    AutoResolveWeapon
        Weapon = AutoResolve_SarumanWeapon
    End
    
    ;AutoResolveLeadership = AutoResolve_SarumanBonus


    ; *** AUDIO Parameters ***;

    VoiceAttack                    = SarumanVoiceAttack
    VoiceAttackCharge            = SarumanVoiceAttackCharge
    ;VoiceCreated                = CampOrcCreateSaruman        ;this conflicts with his respawn dialogue line -- rehooked to spawn FX
    ;VoiceFullyCreated             = CampOrcCreateSaruman        ;this conflicts with his respawn dialogue line -- rehooked to spawn FX
    VoiceFear                     = SarumanVoiceHelpMe
    VoiceGuard                    = SarumanVoiceMove
    VoiceMove                    = SarumanVoiceMove
    VoiceMoveWhileAttacking        = SarumanVoiceDisengage
    VoicePriority                = 92
    VoiceSelect                    = SarumanVoiceSelectMS
    VoiceSelectBattle             = SarumanVoiceSelectBattle

    SoundImpact                    = ImpactHorse

    UnitSpecificSounds
        VoiceEnterUnitEvilMenTransportShip    = SarumanVoiceMove
        VoiceEnterUnitMordorMumakil            = SarumanVoiceMove
        VoiceEnterUnitSlaughterHouse        = SarumanVoiceMove
        VoiceGarrison                        = SarumanVoiceMove
        VoiceInitiateCaptureBuilding        = SarumanVoiceMove
    End

    CrowdResponseKey = EvilMen1

    #include "..\..\..\includes\StandardUnitEvaEvents.inc"
    EvaEventDieOwner            = SarumanDie        ;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

    Behavior = LargeGroupAudioUpdate ModuleTag_LGAU        ;Tie into LargeGroupAudio system
        Key = Humanoid_Male Man Man_Male Hero
    End

    ClientBehavior = AnimationSoundClientBehavior ModuleTag_AnimAudioBehavior
        MaxUpdateRangeCap = 800
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_ATKB    Frames:39 104
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_ATKC     Frames:43 92
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_ATKD     Frames:13 29 55
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_ATRA    Frames:9 20 31 43 55 67
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_DIEB    Frames:20
        AnimationSound = Sound:BodyFallGenericNoArmor    Animation:IUSaruman_SKL.IUSaruman_DIEB    Frames:34
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_GTPA    Frames:51 75 113 139
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_HITA    Frames:12
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_IDLC    Frames:116 188
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_IDLD    Frames:43
        AnimationSound = Sound:BodyFallGenericNoArmor    Animation:IUSaruman_SKL.IUSaruman_LNDA    Frames:4
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_MFDA    Frames:10 19 29 39 48 57 66
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_RUNA    Frames:11 22 34 46 57 69
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_RUNB    Frames:10 23 36 49 62 75
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_TNTA    Frames:36 49 103 123
        AnimationSound = Sound:FootstepDirtA        Animation:IUSaruman_SKL.IUSaruman_TNTB    Frames:24 111
    End


    ; *** ENGINEERING Parameters ***

    RadarPriority = UNIT
    KindOf = HERO PRELOAD SELECTABLE CAN_CAST_REFLECTIONS INFANTRY PATH_THROUGH_EACH_OTHER SCORE NOTIFY_OF_PREATTACK ARMY_SUMMARY ATTACK_NEEDS_LINE_OF_SIGHT HEAVY_MELEE_HITTER
    PathfindDiameter = 40.0

    Body = RespawnBody ModuleTag_RespawnBody
        CheerRadius             = EMOTION_CHEER_RADIUS
        MaxHealth	            = SARUMAN_HEALTH        ;BALANCE Saruman Health
        PermanentlyKilledByFilter    = NONE        ;Who kills me permanently?
            DodgePercent	          = HERO_DODGE_PERCENT
        BurningDeathBehavior    = Yes
        BurningDeathFX            = FX_InfantryBurningFlame
        CheerRadius                = EMOTION_CHEER_RADIUS
    End
    Behavior = RespawnUpdate ModuleTag_RespawnUpdate
        DeathAnim                = DYING
        ;DeathAnim                = STUNNED            ;Model condition to play when killed-to-respawn
        DeathFX                = FX_SarumanDieToRespawn    ;FXList to play when killed-to-respawn
        DeathAnimationTime        = 5500 ;1133            ;How long DeathAnim will take.
        InitialSpawnFX            = FX_SarumanInitialSpawn
        RespawnAnim                = LEVELED                ;Animation to play when respawning.
        RespawnFX                = FX_SarumanRespawn        ;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                = HISaruman_res
        
        ;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:1500        Time:70000        Health:100%        ;DEFAULT VALUES
        RespawnEntry =    Level:2                Cost:1500        Time:70000                        ; ;50% cost, 1x buildtime ;For other levels, only override what is different.
        RespawnEntry =    Level:3                Cost:1500        Time:70000
        RespawnEntry =    Level:4                Cost:1500        Time:70000
        RespawnEntry =    Level:5                Cost:1950        Time:140000                        ; ;65% cost, 2x buildtime
        RespawnEntry =    Level:6                Cost:1950        Time:140000
        RespawnEntry =    Level:7                Cost:1950        Time:140000
        RespawnEntry =    Level:8                Cost:2400        Time:210000                     ; ;80% cost, 3x buildtime
        RespawnEntry =    Level:9                Cost:2400        Time:210000
        RespawnEntry =    Level:10            Cost:2400        Time:210000
    End
    
    Behavior = AutoHealBehavior ModuleTag_SarumanHealing
        StartsActive = Yes
        HealingAmount = HERO_HEAL_AMOUNT
        HealingDelay = 1000
        StartHealingDelay = HERO_HEAL_DELAY
        HealOnlyIfNotInCombat = Yes
    End

    Behavior = StancesBehavior ModuleTag_StancesBehavior
	    StanceTemplate = Hero
    End
    
    #include "..\..\..\includes\CaptureBuilding.inc"

    Behavior = AIUpdateInterface ModuleTag_03
        AutoAcquireEnemiesWhenIdle    = Yes ATTACK_BUILDINGS
        AttackPriority                =     AttackPriority_Infantry
        BurningDeathTime            =    BURNINGDEATH_DURATION_INFANTRY
    End

    Behavior = EmotionTrackerUpdate    Module_EmotionTracker
        TauntAndPointDistance                = 300
        TauntAndPointUpdateDelay            = 10000
        AddEmotion            =    Doom_Base
        //    AddEmotion            =   BraceForBeingCrushed_Base
        //    AddEmotion            =    FearIdle_Base
        //    AddEmotion            =    FearBusy_Base
        AddEmotion            =    Point_Base
        AddEmotion            =    Taunt_Base
         AddEmotion            =    CheerIdle_Base
        AddEmotion            =    CheerBusy_Base
        //    AddEmotion            =    HeroCheerIdle_Base
        //    AddEmotion            =    HeroCheerBusy_Base
        AddEmotion            =    Alert_Base
        AddEmotion            =    CheerForAboutToCrush_Base
    End
    
    LocomotorSet
        Locomotor = HumanLocomotor
        Condition = SET_NORMAL
        Speed	 = NORMAL_EVIL_HERO_SPEED
    End
    
    LocomotorSet
        Locomotor = HumanWanderLocomotor
        Condition = SET_WANDER
        Speed	 = 32
    End
    
    LocomotorSet
        Locomotor = BurningDeathLocomotorInfantry
        Condition = SET_BURNINGDEATH
        Speed      = BURNINGDEATH_WANDERSPEED_INFANTRY
    End

    Behavior = PhysicsBehavior ModuleTag_04
        GravityMult = 1.0
        ShockStandingTime        = 4000 ;msec
    End
    
    Behavior = SlowDeathBehavior ModuleTag_05
        DeathTypes = ALL
        SinkDelay = 3000
        SinkRate = 0.40	 ; in Dist/Sec
        DestructionDelay = 8000
        Sound = INITIAL SarumanVoiceDie
        ShadowWhenDead = No
    End
    
    Behavior = SquishCollide ModuleTag_06
        ;nothing
    End
    
    Behavior = HitReactionBehavior HitReactionBehaviorModuleTag
        HitReactionLifeTimer1 = 3000    ; level 1 (light  damage)  hit reaction animations in ms
        HitReactionThreshold1 = 5.0        ; level 1 (light  damage) threshold trigger
    End

    ;;;    FIRE BALL SPECIAL POWER ;;;
     Behavior = UnpauseSpecialPowerUpgrade ModuleTag_FireballEnabler
        SpecialPowerTemplate    = SpecialAbilitySarumanFireball
        TriggeredBy                = Upgrade_SarumanFireBall
    End

    Behavior = SpecialPowerModule ModuleTag_FireballStarter					  
        SpecialPowerTemplate        = SpecialAbilitySarumanFireball
        UpdateModuleStartsAttack    = Yes
        StartsPaused            = Yes
        InitiateSound            = SarumanVoiceAttackFireball
    End

    Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_FireballUpdate   
        SpecialPowerTemplate    = SpecialAbilitySarumanFireball
        WhichSpecialWeapon        = 1
        SkipContinue            = Yes

        UnpackTime		         = 800
        PreparationTime            = 1   
        PersistentPrepTime        = 1000
        PackTime                = 100
        
        AwardXPForTriggering    = 0
        
        StartAbilityRange        = SARUMAN_FIREBALL_RANGE
        MustFinishAbility        = Yes
        SpecialWeapon            = SarumanFireball
    End

    Behavior = AutoAbilityBehavior ModuleTag_FirBallAutoAbility
        SpecialAbility                = SpecialAbilitySarumanFireball
        MaxScanRange                = #SUBTRACT( SARUMAN_FIREBALL_RANGE 25 )
        Query                        = 1 ALL ENEMIES -STRUCTURE

    End

    
     ;;; DOMINATE SPECIAL POWER ;;;
     Behavior = UnpauseSpecialPowerUpgrade ModuleTag_DominateEnabler
        SpecialPowerTemplate        = SpecialAbilityDominateEnemy
        TriggeredBy                    = Upgrade_SarumanDominate
    End

    Behavior = SpecialPowerModule ModuleTag_DominateEnemySpecialPowerModule
        SpecialPowerTemplate        = SpecialAbilityDominateEnemy
        StartsPaused            = Yes
        UpdateModuleStartsAttack    = Yes
        InitiateSound            = SarumanVoiceDominate
    End

     Behavior = DominateEnemySpecialPower ModuleTag_DominateEnemySpecialPower
	    SpecialPowerTemplate        = SpecialAbilityDominateEnemy
        UnpackingVariation            = 1
        StartAbilityRange            = 275.0 ; ;200.0
        
        AttributeModifierAffects    = ALL -DOZER -HERO -STRUCTURE -ARMY_OF_DEAD -MOVE_ONLY ENEMIES NEUTRAL

        DominateRadius                = 80 ; ;60 ;100 ;150
        DominatedFX                    = FX_SarumanDominateTargets
        TriggerFX                    = FX_SarumanDominateTrigger
        
        UnpackTime                    = 1200 ; ;2000
        PreparationTime                = 1   
        FreezeAfterTriggerDuration    = 2500 ; Hold AI for this long after we fire.        
    End
 
    ;;; SPEECH CRAFT LEVEL GAIN SPECIAL POWER ;;;
    Behavior = UnpauseSpecialPowerUpgrade ModuleTag_KingsFavorEnabler
        SpecialPowerTemplate        = SpecialAbilityKingsFavor
        TriggeredBy                    = Upgrade_SarumanSpeechCraft
    End

     Behavior = SpecialPowerModule ModuleTag_KingsFavorSpecialPowerModule
	    SpecialPowerTemplate        = SpecialAbilityKingsFavor
	    StartsPaused                = Yes
        UpdateModuleStartsAttack    = Yes
	    InitiateSound                = SarumanVoiceSpeechCraft
    End

     Behavior = LevelGrantSpecialPower ModuleTag_KingsFavor
        SpecialPowerTemplate        = SpecialAbilityKingsFavor
        UnpackingVariation            = 2
        StartAbilityRange            = 200.0
;        LevelFX = FX_PorterDeliver

        Experience                    = 50
        RadiusEffect                = 100
        AcceptanceFilter            = KINGSFAVOR_OBJECTFILTER
        LevelFX                        = FX_LevelUp
        
        UnpackTime                    = 2000
        PreparationTime                = 1   
        FreezeAfterTriggerDuration    = 2500 ; Hold AI for this long after we fire.        
    End
    
    ;;; WIZARD BLAST SPECIAL POWER ;;;    

    Behavior = SpecialPowerModule ModuleTag_WizardBlastStarter                            
        SpecialPowerTemplate        = SpecialPowerTelekeneticPush
        UpdateModuleStartsAttack    = Yes
        InitiateSound            = SarumanVoiceAttackWizardBlast
    End    

    Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_WizardBlastUpdate
        SpecialPowerTemplate        = SpecialPowerTelekeneticPush
        WhichSpecialWeapon       	 = 2 ;
        SkipContinue                = Yes
        UnpackTime                    = 700
        PreparationTime                = 1   
        PersistentPrepTime            = 1000
        PackTime                    = 100
        
        AwardXPForTriggering        = 0
        StartAbilityRange            = 80.0
        MustFinishAbility            = Yes
        SpecialWeapon                = SarumanWizardBlast
    End

    Behavior = AutoAbilityBehavior ModuleTag_WizardBlastAutoAbility
        SpecialAbility                = SpecialPowerTelekeneticPush
        MaxScanRange                = #SUBTRACT( GANDALF_FORCE_ATTACK_RANGE 25 )
        Query                        = 1 ALL ENEMIES -STRUCTURE
    End
    

;//---------------------------------LIGHTNING BLAST-----------------------------------------
    Behavior = UnpauseSpecialPowerUpgrade ModuleTag_IstariLightEnabler
        SpecialPowerTemplate = SpecialAbilityLightingBolt
        TriggeredBy = Upgrade_SarumanThunderBolt
    End
    Behavior = SpecialPowerModule ModuleTag_IstariLightPower					  
        SpecialPowerTemplate        = SpecialAbilityLightingBolt
        UpdateModuleStartsAttack    = Yes
        StartsPaused                = Yes
        InitiateSound                = SarumanVoiceAttackCharge
    End

    Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_IstariLightUpdate
        SpecialPowerTemplate    = SpecialAbilityLightingBolt
        SkipContinue            = Yes

        UnpackTime			  = 1500
         PreparationTime		 = 1  
         PersistentPrepTime	  = 1000
         PackTime			    = 500
        AwardXPForTriggering    = 0
        StartAbilityRange        = 290; Note: This has to be smaller than the weapon range or it'll never succeed
        ApproachRequiresLOS        = Yes        
        SpecialWeapon            = SarumanLightningBlastWeapon
        MustFinishAbility        = Yes
        WhichSpecialWeapon        = 3
        BusyForDuration            = 2500
    End

    Behavior = AutoAbilityBehavior ModuleTag_LighntingAutoAbility
        SpecialAbility                = SpecialAbilityLightingBolt
        MaxScanRange                = #SUBTRACT( SARUMAN_LIGHTNING_RANGE 25 )
        Query                        = 1 ALL ENEMIES -STRUCTURE
    End

; ;
    Behavior = AttributeModifierAuraUpdate ModuleTag_SarumanLeadershipUpdate
        StartsActive    = Yes
        BonusName        = GenericHeroLeadership
        RefreshDelay    = 2000
        Range            = 200
        ObjectFilter    = GENERIC_BUFF_RECIPIENT_OBJECT_FILTER
    End    

    ;------- WORD OF POWER (BLUE RING BLAST) SPELL -----------------------------------
    Behavior = UnpauseSpecialPowerUpgrade ModuleTag_WordEnabler
        SpecialPowerTemplate = SpecialAbilitySarumanWordOfPower
        TriggeredBy = Upgrade_SarumanWordOfPower
    End

    Behavior = SpecialPowerModule ModuleTag_WordStarter	   
        SpecialPowerTemplate	  = SpecialAbilitySarumanWordOfPower
        UpdateModuleStartsAttack  = Yes
        StartsPaused                = No
    End

    Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_WordWeaponFireUpdate   
        SpecialPowerTemplate       = SpecialAbilitySarumanWordOfPower
        WhichSpecialWeapon           = 1
        SkipContinue               = Yes

        UnpackTime                   = 1700
        PackTime                   = 1       
        FreezeAfterTriggerDuration = 2500 // Hold AI for this long after we    fire.
        AwardXPForTriggering       = 0       
        StartAbilityRange           = 180.0
        SpecialWeapon               = SarumanWordOfPower
    End


    ;///////////////////
    ; AISpecialPowers
    ;///////////////////


    Behavior = AISpecialPowerUpdate SarumanWordOfPowerAI
        CommandButtonName = Command_SpecialAbilityWordOfPower
        SpecialPowerAIType = AI_SPECIAL_POWER_BASIC_SELF_BUFF
        SpecialPowerRadius = 250
    End

    Behavior = AISpecialPowerUpdate GandalfToggleMountedAI
        CommandButtonName = Command_SpecialAbilitySpeechCraft
        SpecialPowerAIType = AI_SPECIAL_POWER_GIVEXP_AOE
        SpecialPowerRadius = 30.0
    End

    Behavior = AISpecialPowerUpdate WizardBlastAI
        CommandButtonName = Command_SpecialAbilityIsengardWizardBlast
        SpecialPowerAIType = AI_SPECIAL_POWER_GANDALF_WIZARD_BLAST
        SpecialPowerRadius = 100
    End
    
    Behavior = AISpecialPowerUpdate FireballAI
        CommandButtonName = Command_SarumanFireball
        SpecialPowerAIType = AI_SPECIAL_POWER_ENEMY_TYPE_KILLER
    End

    Behavior = AISpecialPowerUpdate ThunderboltAI
        CommandButtonName = Command_SarumanThunderBolt
        SpecialPowerAIType = AI_SPECIAL_POWER_ENEMY_TYPE_KILLER
    End
    
;//---------------------------------------------------------------------------------------    

    Geometry                = CYLINDER
    GeometryMajorRadius        = 8.0
    GeometryMinorRadius        = 8.0
    GeometryHeight            = 19.2
    GeometryIsSmall            = Yes
    
    Shadow                    = SHADOW_DECAL
    ShadowSizeX                = 19
    ShadowSizeY                = 19
    ShadowTexture            = ShadowI
End
[/codebox]

specialpower.ini
[code]
;------------------------------------------------------------------------------
SpecialPower SpecialAbilitySarumanWordOfPower
    Enum                           = SPECIAL_WORD_OF_POWER
    ReloadTime                           = 360000
End
[/code]

upgrade.ini
[code]
Upgrade Upgrade_SarumanWordOfPower
  Type			  = OBJECT
End
[/code]

weapon.ini
[code]
;------------------------------------------------------------------------------
Weapon SarumanWordOfPower ; Big Blue Ring Blast
    IdleAfterFiringDelay = 0
    AttackRange = 150
    MinimumAttackRange = 0.8
    WeaponSpeed = 401		 ; dist/sec
    MinWeaponSpeed = 241
    MaxWeaponSpeed = 601	  ; dist/sec Upper limit on scaling, when attacking past nominal "max" range
    ScaleWeaponSpeed = Yes ; Used for lob weapons, scales speed proportional to range
    RadiusDamageAffects = ENEMIES NOT_SIMILAR
    DelayBetweenShots = 5000			   ; time between shots, msec
    PreAttackDelay	    = 2600
    PreAttackType		 = PER_ATTACK ; Do the delay each time we attack a new target
    PreAttackFX		   = FX_GandalfPreAttackBlastReal
    FireFX			    = FX_GandalfBlast
    FiringDuration	  = 1400
    DamageNugget					    ; A basic Nugget that just does damage
        Damage            = 1000
        Radius            = 250.0
        DamageType        = MAGIC
        DamageFXType    = MAGIC
        DeathType        = EXPLODED
        DamageSpeed        = 700.0 ; must match the ShockWaveSpeed below
    End
    MetaImpactNugget				    ; A Nugget that throws things back with force
;        HeroResist            = .75
        ShockWaveAmount   = 150
        ShockWaveRadius   = 500.0
        ShockWaveTaperOff = 1.0
        ShockWaveZMult    = 2.000
        ShockWaveSpeed      = 700.0
    End
End

Ok this is all the code... I hope it helps...
Ridder Geel

#16 Dovakhin

Dovakhin
  • Members
  • 46 posts

Posted 28 May 2012 - 12:43 PM

I want the opening of 10 levels. But on a per level.

ExperienceLevel SarumanLevel10
TargetNames	 = IsengardSaruman
RequiredExperience   = SARUMAN_LVL10_EXP_NEEDED 
ExperienceAward    = SARUMAN_LVL10_EXP_AWARD
AttributeModifiers   = HeroLevelUpDamage9
Rank	  = 10
LevelUpFx	 = FX:GandalfLevelUp1FX
Upgrades	 = Upgrade_SarumanThunderBolt Upgrade_SarumanWordofPower
SelectionDecal
  Texture	 = decal_hero_evil
  Style	 = SHADOW_ALPHA_DECAL
  OpacityMin    = 50%
  OpacityMax    = 100%
  MinRadius    = 40
  MaxRadius    = 200
  MaxSelectedUnits  = 40
End
END [/background][/font][/color]
[color=#333333][font=arial, sans-serif][background=rgb(245, 245, 245)]


I did not like anyway.

#17 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 28 May 2012 - 01:11 PM

...whut? I don't really get what you mean... if you want everything to start at level 10 put it there, if you want the character to start at level 10 then make the required experience 0.
Ridder Geel

#18 Dovakhin

Dovakhin
  • Members
  • 46 posts

Posted 28 May 2012 - 01:22 PM

No. Word of power opened level 10.I'll have this.

Edited by Dovakhin, 28 May 2012 - 01:23 PM.


#19 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,847 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 28 May 2012 - 04:38 PM

Oh ok :p So its not a problem? :xd:
because that is how you would do that yes ;)

Edited by Ridder Geel, 28 May 2012 - 04:39 PM.

Ridder Geel

#20 Dovakhin

Dovakhin
  • Members
  • 46 posts

Posted 28 May 2012 - 06:16 PM

Let the 10 levels of skill, such as Gandalf. Can this be?




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users