[eINFO] XPSwitches & XP (General)

By on February 21, 2014 11:03:52 PM from Elemental Forums Elemental Forums

Primal_Savage

Join Date 07/2013
+166

[eINFO]


Increasing XP given by a single UnitType (Monsters, Champions, Sovereigns, etc.) through XPSwitches: How I did it

 

1. I created 10 XPSwitches (AbilityBonusOption) doing nothing

2. I assigned to each ability a CombatRating between 5 and 2500 (5, 10, 25, 50, 100, 200, 300, 500, 1000, 2500)

3. I then added 1 XPSwitch to a particular UnitType using SelectedAbilityBonusOption, and the XP increased...

 

Simple as that.

 

At the settings described below, the xp increase was more or less +32XP per +100CombatRating. At Insane, the xp increase was more or less +52XP per +100CombatRating.

 

WARNING: As combat rating is used by the AI to pick targets, do not apply these switches (especially the ones above 300) across the board.

 

A. All fights are between Xtra (Level1 - Epic Rating) and Demonhound (Level10) at Novice (World Setting)

 

B. The Demonhound started as "Strong", but eventually upgraded to "Deadly" (XPSwitch #8: 500) and "Epic" (XPSwitch #10: 2500)

 

 

 

INITIAL FIGHT: 216 Exp

 

C. XPSwitch #2: (10)

 

D. XPSwitch #3: (25)

 

E. XPSwitch  #4: (50)

 

F. XPSwitch #5: (100)

 

G. XPSwitch #6: (200)

 

H. XPSwitch #7: (300)

 

I. XPSwitch #8: (500)

 

J. XPSwitch #9: (1000)

 

K. XPSwitch #10: (2500)

 


 

It is possible to use a negative CombatRating switch, but it may produce some... bizarre results.

 

 

 

 

_________________________

LH Mods by Primal

XtraDeconstruct

XtraDeconstruct Canons

Locked Post 8 Replies
Search this post
Subscription Options


Reason for Karma (Optional)
Successfully updated karma reason!
February 21, 2014 11:14:39 PM from Elemental Forums Elemental Forums

[eINFO]

 

"Instant XP (Champions)"

 

Also, more or less related to the OP, here are seven ways to provide champions/sovereigns w/ additional XP or Levels.

 

Note: XP/level/XPmultiplier (Army), and XPmultiplier (General) are not included as I've only included instant XP methods.

 

 

Code: xml
  1. <!-- 1 -->
  2. <!-- GiveExperience (Item) -->
  3. <!-- Example: BookOfExperience1 -->
  4. <GameItemType InternalName="XP1">
  5. <DisplayName>XP1</DisplayName>
  6. <Description>XP1</Description>
  7. <HideInHiergamenon>1</HideInHiergamenon>
  8. <ShopValue>1</ShopValue>
  9. <GameModifier>
  10. <ModType>Unit</ModType>
  11. <Attribute>GiveExperience</Attribute>
  12. <Value>1</Value>
  13. <Provides>+1 XP</Provides>
  14. </GameModifier>
  15. <IsAvailableForSovereignCustomization>0</IsAvailableForSovereignCustomization>
  16. <IsAvailableForUnitDesign>0</IsAvailableForUnitDesign>
  17. <RarityDisplay>Unique</RarityDisplay>
  18. <HeroOnly>1</HeroOnly>
  19. <IsUsable>1</IsUsable>
  20. <UsableInBattle>0</UsableInBattle>
  21. <ArtDef>XP1_ArtDef</ArtDef>
  22. <GameItemTypeArtDef InternalName="XP1_ArtDef">
  23. <GameItemTypeModelPack InternalName="XP1_Default">
  24. <IconFile>Ability_Veteran_Icon.png</IconFile>
  25. <TintR>0</TintR>
  26. <TintG>0</TintG>
  27. <TintB>0</TintB>
  28. <GameItemTypeModel>
  29. </GameItemTypeModel>
  30. </GameItemTypeModelPack>
  31. </GameItemTypeArtDef>
  32. </GameItemType>

 

Code: xml
  1. <!-- 2 -->
  2. <!-- GiveExperience (Spell) -->
  3. <!-- Example: DestinysInsight -->
  4. <SpellDef InternalName="XP1">
  5. <DisplayName>XP1</DisplayName>
  6. <Description>XP1</Description>
  7. <Image>Ability_Veteran_Icon.png</Image>
  8. <IconFG>Ability_Veteran_Icon.png</IconFG>
  9. <SpellTargetType>Self</SpellTargetType>
  10. <HideInHiergamenon>1</HideInHiergamenon>
  11. <IsSpecialAbility>1</IsSpecialAbility>
  12. <GameModifier>
  13. <ModType>Unit</ModType>
  14. <Attribute>GiveExperience</Attribute>
  15. <Value>1</Value>
  16. <Provides>+1 XP</Provides>
  17. </GameModifier>
  18. </SpellDef>

 

Code: xml
  1. <!-- 3 -->
  2. <!-- TargetUnitLevelUp (Item) -->
  3. <!-- Example: ? -->
  4. <GameItemType InternalName="XP2">
  5. <DisplayName>XP2</DisplayName>
  6. <Description>XP2</Description>
  7. <HideInHiergamenon>1</HideInHiergamenon>
  8. <ShopValue>1</ShopValue>
  9. <GameModifier>
  10. <ModType>Unit</ModType>
  11. <Attribute>TargetUnitLevelUp</Attribute>
  12. <Provides>TargetUnitLevelUp</Provides>
  13. </GameModifier>
  14. <IsAvailableForSovereignCustomization>0</IsAvailableForSovereignCustomization>
  15. <IsAvailableForUnitDesign>0</IsAvailableForUnitDesign>
  16. <RarityDisplay>Unique</RarityDisplay>
  17. <HeroOnly>1</HeroOnly>
  18. <IsUsable>1</IsUsable>
  19. <UsableInBattle>0</UsableInBattle>
  20. <ArtDef>XP2_ArtDef</ArtDef>
  21. <GameItemTypeArtDef InternalName="XP2_ArtDef">
  22. <GameItemTypeModelPack InternalName="XP2_Default">
  23. <IconFile>Ability_Veteran_Icon.png</IconFile>
  24. <TintR>0</TintR>
  25. <TintG>0</TintG>
  26. <TintB>0</TintB>
  27. <GameItemTypeModel>
  28. </GameItemTypeModel>
  29. </GameItemTypeModelPack>
  30. </GameItemTypeArtDef>
  31. </GameItemType>

 

Code: xml
  1. <!-- 4 -->
  2. <!-- TargetUnitLevelUp (Spell) -->
  3. <!-- Example: Paragon -->
  4. <SpellDef InternalName="XP2">
  5. <DisplayName>XP2</DisplayName>
  6. <Description>XP2</Description>
  7. <Image>Ability_Veteran_Icon.png</Image>
  8. <IconFG>Ability_Veteran_Icon.png</IconFG>
  9. <SpellTargetType>Self</SpellTargetType>
  10. <HideInHiergamenon>1</HideInHiergamenon>
  11. <IsSpecialAbility>1</IsSpecialAbility>
  12. <GameModifier>
  13. <ModType>Unit</ModType>
  14. <Attribute>TargetUnitLevelUp</Attribute>
  15. <Provides>TargetUnitLevelUp</Provides>
  16. </GameModifier>
  17. </SpellDef>

 

Code: xml
  1. <!-- 5 -->
  2. <!-- CalcXP (Item + Spell) -->
  3. <!-- Example: LOM_ScrollOfExperience_Lesser (17x) / Normal (30x) / Greater (45x) / Ultimate (60x) -->
  4. <!-- 17x = Grants approximately 1 level of experience (Levels 1 to 5) -->
  5. <!-- 30x = Grants approximately 1 level of experience (Levels 6 to 10) -->
  6. <!-- 45x = Grants approximately 1 level of experience (Levels 11 to 15) -->
  7. <!-- 60x = Grants approximately 1 level of experience (Levels 16 to 20) -->
  8. <GameItemType InternalName="XP3">
  9. <DisplayName>XP3</DisplayName>
  10. <Description>XP3</Description>
  11. <HideInHiergamenon>1</HideInHiergamenon>
  12. <ShopValue>1</ShopValue>
  13. <GameModifier>
  14. <ModType>Unit</ModType>
  15. <Attribute>UseSpell</Attribute>
  16. <StrVal>XP3</StrVal>
  17. <Provides>CalcXP (#x)</Provides>
  18. </GameModifier>
  19. <IsAvailableForSovereignCustomization>0</IsAvailableForSovereignCustomization>
  20. <IsAvailableForUnitDesign>0</IsAvailableForUnitDesign>
  21. <RarityDisplay>Unique</RarityDisplay>
  22. <HeroOnly>1</HeroOnly>
  23. <IsUsable>1</IsUsable>
  24. <UsableInBattle>0</UsableInBattle>
  25. <ArtDef>XP3_ArtDef</ArtDef>
  26. <GameItemTypeArtDef InternalName="XP3_ArtDef">
  27. <GameItemTypeModelPack InternalName="XP3_ArtDef">
  28. <IconFile>Ability_Veteran_Icon.png</IconFile>
  29. <TintR>0</TintR>
  30. <TintG>0</TintG>
  31. <TintB>0</TintB>
  32. <GameItemTypeModel>
  33. </GameItemTypeModel>
  34. </GameItemTypeModelPack>
  35. </GameItemTypeArtDef>
  36. </GameItemType>
  37.  
  38. <SpellDef InternalName="XP3">
  39. <DisplayName>XP3</DisplayName>
  40. <Description>XP3</Description>
  41. <Image>Ability_Veteran_Icon.png</Image>
  42. <IconFG>Ability_Veteran_Icon.png</IconFG>
  43. <SpellTargetType>Self</SpellTargetType>
  44. <HideInHiergamenon>1</HideInHiergamenon>
  45. <IsSpecialAbility>1</IsSpecialAbility>
  46. <GameModifier>
  47. <ModType>Unit</ModType>
  48. <Attribute>GiveExperience</Attribute>
  49. <Provides>CalcXP (#x)</Provides>
  50. <Calculate InternalName="Calc1" ValueOwner="CastingUnit">
  51. <Expression><![CDATA[[UnitStat_Level]]]></Expression>
  52. </Calculate>
  53. <Calculate InternalName="Calc2" ValueOwner="CastingUnit">
  54. <Expression><![CDATA[[Calc1] * #]]></Expression>
  55. </Calculate>
  56. <Calculate InternalName="Value">
  57. <Expression><![CDATA[[Calc2]]]></Expression>
  58. </Calculate>
  59. </GameModifier>
  60. </SpellDef>

 

Code: xml
  1. <!-- 6 -->
  2. <!-- CalcXP (Spell only) -->
  3. <!-- Example: See #5, above -->
  4. <SpellDef InternalName="XP3">
  5. <DisplayName>XP3</DisplayName>
  6. <Description>XP3</Description>
  7. <Image>Ability_Veteran_Icon.png</Image>
  8. <IconFG>Ability_Veteran_Icon.png</IconFG>
  9. <SpellTargetType>Self</SpellTargetType>
  10. <HideInHiergamenon>1</HideInHiergamenon>
  11. <IsSpecialAbility>1</IsSpecialAbility>
  12. <GameModifier>
  13. <ModType>Unit</ModType>
  14. <Attribute>GiveExperience</Attribute>
  15. <Provides>CalcXP (#x)</Provides>
  16. <Calculate InternalName="Calc1" ValueOwner="CastingUnit">
  17. <Expression><![CDATA[[UnitStat_Level]]]></Expression>
  18. </Calculate>
  19. <Calculate InternalName="Calc2" ValueOwner="CastingUnit">
  20. <Expression><![CDATA[[Calc1] * #]]></Expression>
  21. </Calculate>
  22. <Calculate InternalName="Value">
  23. <Expression><![CDATA[[Calc2]]]></Expression>
  24. </Calculate>
  25. </GameModifier>
  26. </SpellDef>

 

Code: xml
  1. <!-- 7 -->
  2. <!-- FreeLevel (Ability) -->
  3. <!-- Example: Veteran -->
  4. <AbilityBonus InternalName="XP4">
  5. <AbilityBonusOption InternalName="XP4">
  6. <DisplayName>XP4</DisplayName>
  7. <Description>XP4</Description>
  8. <Icon>Ability_Veteran_Icon.png</Icon>
  9. <GameModifier>
  10. <ModType>Unit</ModType>
  11. <Attribute>FreeLevel</Attribute>
  12. <Provides>FreeLevel</Provides>
  13. </GameModifier>
  14. </AbilityBonusOption>
  15. </AbilityBonus>

 

 

 

_________________________

LH Mods by Primal

XtraDeconstruct

XtraDeconstruct Canons

Reason for Karma (Optional)
Successfully updated karma reason!
February 22, 2014 2:12:01 PM from Elemental Forums Elemental Forums

I've added this under Odds and Ends, to the Regularly Updated List of Mods for E:LH., as well as at the end of the Xtra_Deconstruct listing.

Reason for Karma (Optional)
Successfully updated karma reason!
February 22, 2014 2:35:33 PM from Elemental Forums Elemental Forums

Who made the demonhound?

Reason for Karma (Optional)
Successfully updated karma reason!
February 22, 2014 2:41:04 PM from Elemental Forums Elemental Forums

N/A

Reason for Karma (Optional)
Successfully updated karma reason!
February 22, 2014 3:08:24 PM from Elemental Forums Elemental Forums

Combat rating is the primary method through which AI determines what to attack. Are you sure this isn't going to cause issues with killing monsters for the AI?

Reason for Karma (Optional)
Successfully updated karma reason!
February 22, 2014 3:54:26 PM from Elemental Forums Elemental Forums

N/A

Reason for Karma (Optional)
Successfully updated karma reason!
February 24, 2014 8:18:45 AM from Elemental Forums Elemental Forums

(perhaps stating the obvious here)

I think, perhaps, that this may prove most interesting when assigning combat ratings to modded entities.  Previously, when reading through mod XML, I more or less assumed that it was somehow factored into the AI determination as to priority of use and didn't give it much thought.  An uninformed modder might have assigned a very high combat rating in order that their mod's effect would be more likely to be "picked" by the AI.  Since there are unintended XP side effects, setting arbitrarily large values should be avoided, if that's the only intent.

Also - to summarize the four "XP granting methods" you've outlined

  • Create a consumable item that triggers a spell def that grants a fixed amount of XP
  • Create a consumable item that grants "level up" (variable XP depending on user's level and how close they are to their next level)
  • Create a consumable item that grants a variable amount of XP determined via algorithmic means (e.g. multiply by consumer's level)
  • Add an ability bonus that grants "free level" (e.g. same as the "Veteran" ability.)

 

If you're trying to be comprehensive, you might want to add

  • Adding an item that has a multiplier to unit XP gained (e.g. the Ring of Wisdom and the Scythe of the Void) - works for both positive and negative modifiers
  • Adding a unit ability that has a multiplier, like the Altarian race blood ability (again, supports both positive and negative)
  • Adding a unit ability that has a multiplier for the Army's XP, like the Bard henchman ability or Commander trainer abilities (I would assume this also supports both "directions" but I've never seen a negative multiplier for this.)
  • Castable spells that increase unit XP (e.g. Destiny's Insight)
  • Castable spells that increase unit level (e.g. Paragon) - does this work with negative values?

 

 

Reason for Karma (Optional)
Successfully updated karma reason!
February 24, 2014 1:50:17 PM from Elemental Forums Elemental Forums

N/A

Reason for Karma (Optional)
Successfully updated karma reason!
Stardock Forums v1.0.0.0    #101114  walnut1   Server Load Time: 00:00:00.0000484   Page Render Time: