Jump to content

How is spell experience calculated?


steelfeathers

Recommended Posts

The creation kit wiki states that spell experience is the "Base cost" x "Skill usage multiplier". But from my own testing this doesn't seem to be correct - the amount of experience almost appears to be independent of the base cost altogether.

 

Has anyone worked out the actual calculation for spell experience?

Link to comment
Share on other sites

Well you could do exactly what I would do to test it: try changing some numbers and take notes on how it affects skill gain.

 

I've been doing that, but it's very imprecise. I just keep having to go into the skills menu after every cast and try to eye-ball how far the exp bar has advanced. I was hoping there was a method to get actual numbers....

Link to comment
Share on other sites

But isn't the auto-calculated cost based on the base magicka cost? If it isn't, then what is it based on?

 

Auto-calcuated cost STARTS from the base magicka cost, then does some multiplication with the duration and magnitude of the spell (I don't know the exact formula).

 

But if you set the base magicka cost to 0.0001, then the total auto-calculated cost is always going to be 0, unless your magnitude/duration is enormous. HOWEVER, because there IS an auto-calculated cost (even if it rounds down to zero) the spell XP is still <skill mult x total magicka cost>. Except for Restoration, because Restoration is weird and likes to do its own thing.

Link to comment
Share on other sites

 

 

But isn't the auto-calculated cost based on the base magicka cost? If it isn't, then what is it based on?

Auto-calcuated cost STARTS from the base magicka cost, then does some multiplication with the duration and magnitude of the spell (I don't know the exact formula).

 

But if you set the base magicka cost to 0.0001, then the total auto-calculated cost is always going to be 0, unless your magnitude/duration is enormous. HOWEVER, because there IS an auto-calculated cost (even if it rounds down to zero) the spell XP is still <skill mult x total magicka cost>. Except for Restoration, because Restoration is weird and likes to do its own thing.

So it's basically

 

skill mult * base magicka cost * (magnitude * x + duration * y)

 

When you say that restoration does its own thing, do you mean that you a spell effect will give a certain amount of experience, and then you can take that effect and assign it to the Restoration school and suddenly it gives a totally different amount of XP?

Link to comment
Share on other sites

 

 

But isn't the auto-calculated cost based on the base magicka cost? If it isn't, then what is it based on?

Auto-calcuated cost STARTS from the base magicka cost, then does some multiplication with the duration and magnitude of the spell (I don't know the exact formula).

 

But if you set the base magicka cost to 0.0001, then the total auto-calculated cost is always going to be 0, unless your magnitude/duration is enormous. HOWEVER, because there IS an auto-calculated cost (even if it rounds down to zero) the spell XP is still <skill mult x total magicka cost>. Except for Restoration, because Restoration is weird and likes to do its own thing.

So it's basically

 

skill mult * base magicka cost * (magnitude * x + duration * y)

 

When you say that restoration does its own thing, do you mean that you a spell effect will give a certain amount of experience, and then you can take that effect and assign it to the Restoration school and suddenly it gives a totally different amount of XP?

 

 

For Restoration, I mean that the XP seems to be based on the healing amount, not on the magicka cost.

 

For every other school, I perfer to think of it as just <skill mult * total magicka cost> for the sake of my sanity, even if you can break down total magicka cost into something like <base magicka cost * (magnitude + duration)>. Moral of the story is that you can manipulate the base magicka cost and the mag/dur as much as you want and still end up with the same amount of XP, as long as the resulting total magicka cost is the same.

Link to comment
Share on other sites

  • 5 years later...

So obviously I'm a little late to the party, but maybe someone will stumble in here and have use of this.

 

I did some detailed charting of the different schools and here's my conclusion, as simple as possible:

Alteration: (CalculatedCost * SkillMult) * 3.065 = Aquired skill

Conjuration: (CalculatedCost * SkillMult) * 2.135 = Aquired skill

Destruction: (CalculatedCost * SkillMult) * 1.376 = Aquired skill

Illusion: (CalculatedCost * SkillMult) * 4.725 = Aquired skill

Restoration: (CalculatedCost * SkillMult) * 2.012 = Aquired skill

 

 

To make a short story long here's the actual data and how I acquired it:

 

 

I created a trigger that gave me the amount of skill I had aquired, in whatever school the spell in my right hand belonged to. Here's the script:

 

auto STATE waitingForPlayer

EVENT onTriggerEnter(objectReference triggerRef)
if triggerRef == Game.GetPlayer()

String SkilltoCheck = Game.GetPlayer().GetEquippedSpell(1).GetNthEffectMagicEffect(0).GetAssociatedSkill()
Float CurrSkillExp = ActorValueInfo.GetActorValueInfobyName(""+SkillToCheck+"").GetSkillExperience() as int
Debug.Notification(""+SkillToCheck+"")
Debug.Notification(CurrSkillExp)

gotoState("waitingForPlayer")
endif
endEVENT
endSTATE

 

(Note that this will get the spells FIRST magic effect, that has index 0. To check index just look at the list in the Spell (in Creation Kit)).

 

I then created a simple fire and forget spell which I altered with different values of Base Cost, Duration, Magnitude & SkillMultplier (Realizing that Base Cost & Duration only altered the Calculated Cost for the spell), and filled out the data in a table.

 

I then looked at the tables, and saw that I always got roughly the same value if I divided SkillGain by SkillMult and then by CalcCost, as such:

 

SkillGain

(CalcCost * SkillMult) = x

 

(CalcCost * SkillMult) * x = SkillGain

 

Thus I found that x is the value to multiply by, in order to get the correct SkillGain value.

I could now complete the tables.

 

Alteration:

SkillMult CalcCost SkillGain x

1 12 37 3.083

1 16 50 3.125

1 25 76 3.040

1.5 25 114 3.040

1.5 51 229 2.993

2 255 1528 2.996

2 4 26 3.250

 

Conjuration:

SkillMult CalcCost SkillGain x

3 22 142 2.152

5 67 710 2.119

4.5 33 317 2.135

2.3 50 243 2.113

11 29 682 2.138

8.7 21 393 2.151

 

Destruction:

SkillMult CalcCost SkillGain x

2 16 45 1.406

2 34 93 1.368

2 46 126 1.370

1.9 46 120 1.373

4 46 252 1.370

10 46 631 1.372

20 46 1263 1.373

 

Illusion:

SkillMult CalcCost SkillGain x

2 46 430 4.674

2 18 167 4.639

15 16 1160 4.833

10 16 772 4.825

3 57 798 4.667

3 22 311 4.712

 

Restoration:

SkillMult CalcCost SkillGain x

8.7 21 374 2.047

3.6 72 519 2.002

5 144 1440 2

1.4 170 478 2.008

2.7 85 461 2.009

4.6 63 582 2.008

 

NOTES:

I. Someone mentioned earlier that Restoration worked in a different way from the others, but I have not found that to be the case.

 

II. The counter in the script restarts at every level. So if you level up you have to take into account how many skillpoints were spent leveling up.

For example; to go from level 15-16 you need 393 skillpoints. So if you cast the spell and the result is a level up and the debug tells you the skillincrease is 55 you have to add those together (393+55).

 

III. Surely there is a way to figure out why x is differnet for different schools, but I didn't find any correlation.

 

IV. I also noticed that a few of the vanilla spells don't increase your skill at all. Particularly in alteration and illusion, but that's for someone else to investigate...

 

 

 

Edited by Pyromanius
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...