Jump to content

[WIP] Spellfury - Arcane Unleashed


Sjogga

Recommended Posts

Playing as a pure mage in vanilla skyrim is, well, boring. Early in the game you don't have enough magicka to cast spells and in the later stages, your spells doesn't do enough damage. Some of the first mods made for Skyrim introduced spell scaling, a system that fixed the lack of late game damage and has been adapted by many other mods. The magicka issues early on still remained however. This is my attempt at fixing this.

 

What this mod does:

 

The mod reduces all spell costs by 75%. Each time you cast a spell, spell cost for all spells go up. The effect stacks, and each stack has a separate duration. This is called Instability. Spells with a high magicka cost generates more instability than spells with a low magicka cost.

 

Casting spells too rapidly causes subsequent spells to generate more instability than it usually would. This is the Global Cooldown multiplier. This value increases exponentially every time you cast a spell, but is reset after a short period if you haven't cast any spells.

 

Concentration spells generates more instability that lasts longer. Spells with a long duration generates half as much instability, but lasts twice as long. Most of these values can be modified in an MCM menu.

 

 

Aside from the instability system, spell scaling will be introduced. Magicka reduction on gear will improve damage or duration instead of reducing magicka cost.

 

Default Values:

 

 

Global reduction: 75%. This value is reduced by instability, and eventually reaches a negative value. Spells then cost more than they usually would. Each point of instability reduces this value by 1.
 
StackBaseInstability: 15. Each spell you cast generates at least this amount of instability.
StackDuration: 15 second. This is how long a single stack lasts.
StackBaseManaCostMultiplier: 0.07. Spell base cost is multiplied by this amount and added to the instability generated.
 
GlobalCooldownValue: 1.0. This value is multiplied with the instability generated by a spell and increases each time you cast a spell. It is reset when you haven't cast any spells.
GlobalCooldownMultiplier: 1.25. Each spell cast multiplies the current GlobalCooldownValue by this amount.
GlobalCooldownDuration: 8 seconds. The GCV is reset to 1.0 if you haven't cast any spells within this time period.
 
ConcentrationStackDurationIncrease: 7 seconds. This duration is added to stacks generated by concentration spells.
ConcentrationStackInstabilityMultiplier: 7. This is multipled with StackBaseManaCost.
 
DurationSpellLimit: 15 seconds. If the duration of a spell exceeds this value, the multipliers bellow are applied.
DurationSpellInstabilitymultiplier: 0.5. Duration spells generates half as much instabillity when cast.
DurationSpellDurationMultipleíer: 2.0. Stacks generated by duration spells lasts twice as long.

 

 

 

 

 

What does all of this mean?

 

The formula for instability generation is as follows:

StackBaseInstability + StackBaseManaCostMultiplier * GlobalCooldownValue

A normal firebolt has a base cost of 41. Assume we were to cast 5 in a rapid succession. This is the result before perk and skill reductions:

 

The first Firebolt would cost 10 magicka and generate 18 instability.

The second Firebolt would cost 17 magicka and generate 19 instability.

The third Firebolt would cost 25 magicka and generate 20 instability.

The fourth Firebolt would cost 34 magicka and generate 21 instability.

The fifth Firebolt would cost 42 magica and generate 23 instability.

 

Total magicka that would have been spent in vanilla: 205

Total magica spent here: 127

 

Step it up to the Incinerate spell, with a base magicka cost of 298:

 

The first Incinerate would cost 74 magicka and generate 38 instability.

The second Incinerate would cost 190 magicka and generate 44 instability.

The third Incinerate would cost 323 magicka and generate 52 instability.

The fourth Incinerate would cost 479 magicka and generate 61 instability.

The fifth Incinerate would cost 662 magica and generate 73 instability.

 

Total magicka that would have been spent in vanilla: 1490

Total magica spent here: 1616

 

As you can see, the early game is cheaper, while the late game is more expensive. Keep in mind that higher damage spells benefits more from enchants and damage gained through spell scaling.

 

Calculation spreadsheet

 

 

 

Synergy with other mods and conflicts:

 

Any mod that introduces spell scaling will need a compatibility patch.

Spell packs that introduces concentration spells might need a compatibility patch, but probably not.

 

 

Current status:

- Main script: Done.

- Spell scaling: Not made.

- MCM: Not made.

- Compatibility patches: None yet.

- Spell packs integrations: None yet.

 

 

Thoughts on this? Should anything be added, removed or tweaked?

 

Link to comment
Share on other sites

A few of the spells in my mod will have spell scaling to the player level, but will they need a patch since they're custom spells?

 

Also right now we're going with a spell that has conditional MGEFs (all one MGEF with different powers depending on player level) - is there a better way to do this?

 

But this seems like a good way of introducing sort of a magic version of spell tempering. Keep up the good work Sjogga!

Link to comment
Share on other sites

The thing about having multiple spell scaling mods installed is that they will all apply their multiplier unless specific conditions prevent it. While the game itself will run just fine, the synergy between double spell scaling will arguably break the spells affected by them. For example, assume your destruction skill is at 100. Two mods boosts damage by 100% each. This would result in a spell dealing 4x normal damage (BaseDmg*2.0*2.0). A compatibility patch could set conditions to prevent both scaling multipliers from effecting the samme spell.

 

As for your second question, I honestly have no idea.

Link to comment
Share on other sites

The thing about having multiple spell scaling mods installed is that they will all apply their multiplier unless specific conditions prevent it. While the game itself will run just fine, the synergy between double spell scaling will arguably break the spells affected by them. For example, assume your destruction skill is at 100. Two mods boosts damage by 100% each. This would result in a spell dealing 4x normal damage (BaseDmg*2.0*2.0). A compatibility patch could set conditions to prevent both scaling multipliers from effecting the samme spell.

 

As for your second question, I honestly have no idea.

Hmm. Well not all the spells will be scaled - this particular one is because it's a spell bestowed by Sheogorath and as such it's somewhat special.

Link to comment
Share on other sites

Just a thought, but I personally prefer it when magnitude is boosted for illusion. I find that increasing their duration beyond the base values is usually overkill, considering most fights don't last longer than 30 or 60 seconds. Increasing the level limit, on the other hand, makes illusion much more viable throughout the game.

Link to comment
Share on other sites

Just a thought, but I personally prefer it when magnitude is boosted for illusion. I find that increasing their duration beyond the base values is usually overkill, considering most fights don't last longer than 30 or 60 seconds. Increasing the level limit, on the other hand, makes illusion much more viable throughout the game.

Good point.

 

 

Hmm... This "blanket" tweaking might not be the best way to balance spells. Well, to each their own...

Please expand.

Link to comment
Share on other sites

Well, right now I'm thinking of re-designing the concept (I might still choose the original idea).

 

1st option Im considering is to make spells cost less as your mana goes down, but they also become weaker. When your mana hits zero, spells also cost zero, but are also significantly weaker.

 

2nd option is to grant the player a massive mana regeneration boost which goes down as you cast spells, instead of reducing mana cost. This helps with some of the technical issues I encountered when I implemented the original concept while still achieving a similar goal.

 

Because the original idea is already functioning, I'll probably leave it in so that you can choose through the MCM which implementation you want to use.

Link to comment
Share on other sites

  • Recently Browsing   0 members

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