(Q) How do I

**Add ExperienceLevels?**(A)This is a 3 step process

1. Adding GameData

2. Adding AttributiveModifiers

3. Adding Experience Levels

For This Tutorial We Will Try to Get GondorGandalf To Level up To Level 15

1. GameData

*(Found in Gamedata.ini)*To make it easy in the long run were going to add 15 new macros

5 For EXP Awards

5 For EXP Needed

10 For Attributive Modifiers

EXP Needed is the amount of points needed to Level up to this specific level

First we see whats already there

EXP Award is the amount the unit is "awarded" once it reaches the level

AttributiveModifiers We will be adding 5 Damage Add macros and 5 HP Add Macros so when he levels up each level he recieves more HP and damage

#define GANDALF_LVL1_EXP_AWARD 70
#define GANDALF_LVL2_EXP_AWARD 80
#define GANDALF_LVL3_EXP_AWARD 90
#define GANDALF_LVL4_EXP_AWARD 100
#define GANDALF_LVL5_EXP_AWARD 120
#define GANDALF_LVL6_EXP_AWARD 150
#define GANDALF_LVL7_EXP_AWARD 180
#define GANDALF_LVL8_EXP_AWARD 210
#define GANDALF_LVL9_EXP_AWARD 250
#define GANDALF_LVL10_EXP_AWARD 300
#define GANDALF_LVL2_EXP_NEEDED 100
#define GANDALF_LVL3_EXP_NEEDED 200
#define GANDALF_LVL4_EXP_NEEDED 300
#define GANDALF_LVL5_EXP_NEEDED 500
#define GANDALF_LVL6_EXP_NEEDED 700
#define GANDALF_LVL7_EXP_NEEDED 900
#define GANDALF_LVL8_EXP_NEEDED 1100
#define GANDALF_LVL9_EXP_NEEDED 1500
#define GANDALF_LVL10_EXP_NEEDED 2000

To Make It realistic we create 5 more of each that are numerically and equally consistent

#define GANDALF_LVL11_EXP_AWARD 350
#define GANDALF_LVL12_EXP_AWARD 400
#define GANDALF_LVL13_EXP_AWARD 460
#define GANDALF_LVL14_EXP_AWARD 520
#define GANDALF_LVL15_EXP_AWARD 590
#define GANDALF_LVL11_EXP_NEEDED 2500
#define GANDALF_LVL12_EXP_NEEDED 3000
#define GANDALF_LVL13_EXP_NEEDED 3600
#define GANDALF_LVL14_EXP_NEEDED 4200
#define GANDALF_LVL15_EXP_NEEDED 4900

Now we are going to add some Damage and HP add Macros here are the basic pre-existing ones

#define HERO_LVL2_HP_ADD 60
#define HERO_LVL3_HP_ADD 60
#define HERO_LVL4_HP_ADD 80
#define HERO_LVL5_HP_ADD 100
#define HERO_LVL6_HP_ADD 100
#define HERO_LVL7_HP_ADD 100
#define HERO_LVL8_HP_ADD 100
#define HERO_LVL9_HP_ADD 100
#define HERO_LVL10_HP_ADD 100
#define HERO_LVL2_DAM_ADD 10
#define HERO_LVL3_DAM_ADD 10
#define HERO_LVL4_DAM_ADD 10
#define HERO_LVL5_DAM_ADD 10
#define HERO_LVL6_DAM_ADD 10
#define HERO_LVL7_DAM_ADD 10
#define HERO_LVL8_DAM_ADD 10
#define HERO_LVL9_DAM_ADD 10
#define HERO_LVL10_DAM_ADD 20

To Make It realistic we create 4 more of each that are numerically and equally consistent

#define HERO_LVL11_HP_ADD 120
#define HERO_LVL12_HP_ADD 120
#define HERO_LVL13_HP_ADD 150
#define HERO_LVL14_HP_ADD 160
#define HERO_LVL11_DAM_ADD 20
#define HERO_LVL12_DAM_ADD 20
#define HERO_LVL13_DAM_ADD 20
#define HERO_LVL14_DAM_ADD 30

Now that we Have the Macros added in the gamedata.ini we must move on to the next step

2. AttributeModifier

*(Found in AttributeModifier.ini)*Now what were adding is when Gandalf Levels up he recieves the HP and Damage he should for that specific Level

Heres an existing Code for A Hero at level 9

ModifierList HeroLevelUpDamage9
Category = LEVEL
Modifier = DAMAGE_ADD HERO_LVL10_DAM_ADD
Modifier = HEALTH HERO_LVL10_HP_ADD
Duration = 0
End

Now we must add the ones for Levels 10, 11, 12, 13, and 14 (15 is excluded because there is no level after it and 10 is included because that was not added in the original ExperienceLevel)

ModifierList HeroLevelUpDamage10
Category = LEVEL
Modifier = DAMAGE_ADD HERO_LVL11_DAM_ADD
Modifier = HEALTH HERO_LVL11_HP_ADD
Duration = 0
End
ModifierList HeroLevelUpDamage11
Category = LEVEL
Modifier = DAMAGE_ADD HERO_LVL12_DAM_ADD
Modifier = HEALTH HERO_LVL12_HP_ADD
Duration = 0
End
ModifierList HeroLevelUpDamage12
Category = LEVEL
Modifier = DAMAGE_ADD HERO_LVL13_DAM_ADD
Modifier = HEALTH HERO_LVL13_HP_ADD
Duration = 0
End
ModifierList HeroLevelUpDamage13
Category = LEVEL
Modifier = DAMAGE_ADD HERO_LVL14_DAM_ADD
Modifier = HEALTH HERO_LVL14_HP_ADD
Duration = 0
End
ModifierList HeroLevelUpDamage14
Category = LEVEL
Modifier = DAMAGE_ADD HERO_LVL15_DAM_ADD
Modifier = HEALTH HERO_LVL15_HP_ADD
Duration = 0
End

That is where the new macros we added tie in.

1. ExperienceLevels

*(Found in experiencelevels.ini)*Finally We must add the 5 more Experience Levels for Gandalf and include all the new things we added in the previous directions.

Heres an Example of His Level 9

ExperienceLevel GandalfLevel9
TargetNames = GondorGandalf GondorGandalfGrey GondorGandalfWhite GondorGandalfCavalry
RequiredExperience = GANDALF_LVL9_EXP_NEEDED
ExperienceAward = GANDALF_LVL9_EXP_AWARD
AttributeModifiers = HeroLevelUpDamage8
Rank = 9
LevelUpFx = FX:GandalfLevelUp1FX
;LevelUpOCL = OCL_GandalfLevelUp1OCL
SelectionDecal
Texture = decal_hero_good
Style = SHADOW_ALPHA_DECAL
OpacityMin = 50%
OpacityMax = 100%
MinRadius = 40
MaxRadius = 200
MaxSelectedUnits = 40
End
END

And heres Levels 11 through 15

ExperienceLevel GandalfLevel11
TargetNames = GondorGandalf GondorGandalfGrey GondorGandalfWhite GondorGandalfCavalry
RequiredExperience = GANDALF_LVL11_EXP_NEEDED
ExperienceAward = GANDALF_LVL11_EXP_AWARD
Rank = 11
Upgrades = Upgrade_GandalfWordOfPower
LevelUpFx = FX:GandalfLevelUp1FX
AttributeModifiers = HeroLevelUpDamage10
SelectionDecal
Texture = decal_hero_good
Style = SHADOW_ALPHA_DECAL
OpacityMin = 50%
OpacityMax = 100%
MinRadius = 40
MaxRadius = 200
MaxSelectedUnits = 40
End
END
ExperienceLevel GandalfLeve12
TargetNames = GondorGandalf GondorGandalfGrey GondorGandalfWhite GondorGandalfCavalry
RequiredExperience = GANDALF_LVL12_EXP_NEEDED
ExperienceAward = GANDALF_LVL12_EXP_AWARD
Rank = 12
Upgrades = Upgrade_GandalfWordOfPower
LevelUpFx = FX:GandalfLevelUp1FX
AttributeModifiers = HeroLevelUpDamage11
SelectionDecal
Texture = decal_hero_good
Style = SHADOW_ALPHA_DECAL
OpacityMin = 50%
OpacityMax = 100%
MinRadius = 40
MaxRadius = 200
MaxSelectedUnits = 40
End
END
ExperienceLevel GandalfLevel13
TargetNames = GondorGandalf GondorGandalfGrey GondorGandalfWhite GondorGandalfCavalry
RequiredExperience = GANDALF_LVL13_EXP_NEEDED
ExperienceAward = GANDALF_LVL13_EXP_AWARD
Rank = 13
Upgrades = Upgrade_GandalfWordOfPower
LevelUpFx = FX:GandalfLevelUp1FX
AttributeModifiers = HeroLevelUpDamage12
SelectionDecal
Texture = decal_hero_good
Style = SHADOW_ALPHA_DECAL
OpacityMin = 50%
OpacityMax = 100%
MinRadius = 40
MaxRadius = 200
MaxSelectedUnits = 40
End
END
ExperienceLevel GandalfLevel14
TargetNames = GondorGandalf GondorGandalfGrey GondorGandalfWhite GondorGandalfCavalry
RequiredExperience = GANDALF_LVL14_EXP_NEEDED
ExperienceAward = GANDALF_LVL14_EXP_AWARD
Rank = 14
Upgrades = Upgrade_GandalfWordOfPower
LevelUpFx = FX:GandalfLevelUp1FX
AttributeModifiers = HeroLevelUpDamage13
SelectionDecal
Texture = decal_hero_good
Style = SHADOW_ALPHA_DECAL
OpacityMin = 50%
OpacityMax = 100%
MinRadius = 40
MaxRadius = 200
MaxSelectedUnits = 40
End
END
ExperienceLevel GandalfLevel15
TargetNames = GondorGandalf GondorGandalfGrey GondorGandalfWhite GondorGandalfCavalry
RequiredExperience = GANDALF_LVL15_EXP_NEEDED
ExperienceAward = GANDALF_LVL15_EXP_AWARD
Rank = 15
Upgrades = Upgrade_GandalfWordOfPower
LevelUpFx = FX:GandalfLevelUp1FX
AttributeModifiers = HeroLevelUpDamage14
SelectionDecal
Texture = decal_hero_good
Style = SHADOW_ALPHA_DECAL
OpacityMin = 50%
OpacityMax = 100%
MinRadius = 40
MaxRadius = 200
MaxSelectedUnits = 40
End
END

Theres all the information you need to have your units level up above level 10

**Edited by {IP}Gil-Galad, 27 July 2005 - 07:05 AM.**