Morrowind
0 of 0

File information

Last updated

Original upload

Created by

Oghma

Uploaded by

ddotoon

Virus scan

Safe to use

About this mod

DaggerSpell-v4.0 by Oghma
Reduce spellcasting costs based on the skill level of relevant school in a Daggerfall way following a pseudo-Gaussian curve with an enhanced detection of the effects from different Schools of Magic .

Requirements
Permissions and credits
--------------------------------------------------------------------------
Reduce spell casting costs.
--------------------------------------------------------------------------
Author:
- "DaggerSpell 4.0" ( Reworked "CostReduce v3.1" ) by Oghma (who will accept all
the blames and accords all the credits to Aragon).
Credits:
- Original "CostReduce v3.1" Aragon ([email protected])
This mod is a refined (and completely rewritten) version Horatio's
excellent "horatio_casting2" mod (http://thelys.free.fr/horatio.htm)
and fixes several small bugs. Thanks to Horatio (& Eldar) for his nice plugin!

Version:
4.0, Chrismas' gift before an happy new year 2018.

Original "CastReduce" by Aragon (inspired by Horatio):
This mod reduces the casting cost of a spell based on your skill level in
the corresponding magic school (destruction, mysticism, etc). It allows you
to develop your mages more satisfactory at higher levels.

The spell costs will not be lower in the spell menu but they *will* cost
less when cast. The mod will not allow you to cast a spell though, when
you don't have enough magicka to cast the spell with its original cost.

"DaggerSpell" (reworked "CastReduce" by Oghma)
The magicka cost of a spell is reduced in a DaggerFall's parabolic way and
tends to a minimum of 10% in an hyperbolic way (see below).

Why DaggerSpell ?
Because I hate linear function and I love the way it was handled in Daggerfall.
Most of mods made 'till now were too linear or weirdly thought like "Mastering-
Magicka" by DopeyFish, or too drifting like "Magicka Based Skill Progression" by
Hotfusion (i find some of his ideas very interesting but a bit too much constrained).
Have a look at the charts provided as Jpeg to see my point of view.

Most of all , all these has no sight about high level in schools of Magic. If a
reach a skill level 200 or above , even temporary , by any regular mean (Enchant )
without "tweak or cheat", I think he deserves a little extra facility. I provide two
different curve for the weighting computation : one with an hyperbola^4 and the other
with an hyperbola^2, respectively named "DaggerSpell^2" & "DaggerSpell^4".
I force nobody to use one more than the other but still consider "DaggerSpell^2" ,
none the less.
I began coding with the hyperbola^4 which gives a result quite close to a
real Gaussian but I found it too generous at higher skill level. So I chose an
hyperbola^2 that gives a more balanced result at higher skill level. (Have a look
at the charts provided)

DaggerSpell fully exploit ( still within the limits of the engine ) the capability
of detecting whose school the spell effects are from , and what elemental effects
have been used. It counts and weights separately equal share of the initial spell's
cost (I did not find anything in the scripting language to determine which effect
costs what). And none of the others mods do it !

An example with a spellmade spell : 2 mystic , 4 destruct (fire, shock & 2 others )
and 1 alteration spells effects :
- the script probes the sounds and detects 1 mystic , 3 detruct , 1 alter.
- it shares the spell cost in 5 equal parts (3 for destruction)
- each part are weighted by the pseudo-Gaussian function with the relevant skill lvl.
- the sum of the cost-reductions is store in a pool.
- The push-back gives back 1/4 of the pool every 0.1 s ( 10 ms ) 'till it's empty

The push-back by pool/4 per 0.1s does not exceed 2/3s which comply with the '3s'-
delay between spellcasting set by MCP.
I integrated the magicka push-back in a loop that can allow the implementation of
"magicka constant regen"; the code is integrated but commented (because i'm against
"magicka constant regen", <I'm joking!>) because it still further investigation in order
to be smartly coordinated and optimized.
The 'magicka constant regen' expected (even if I don't like the principle and won't
use it) should follow the rules
- no regen for magicka stunted character or character under exhausting activity.
- regen value ~= ( 0.01 / (Fatigue/MaxFatigue)^2 ) sp.
And all that while delaying it to the next frame, making the script compatible with
"MWEMagickaSkill" by 'Azrael the Drooling; Drunken Imbecile' because he has time to
detect the full cost of the spell.

The ESP enable Fire & Poison unused sounds, in order to enhanced effects detection,
with fixes within Magical_Effects along with other fixes that may be redundant with
"Morrowind Project Patch" but tuned and more respectful of the original settings.
(ex: keeping Restoration's sound for Mysticism "Absorb Health/Attrib/Skill/Fatigue/SP"
spells). Thus , it should be best loaded 'AFTER / ON TOP of' MPP !
I integrated also unused VFX (VFX_Absorb, VFX_Reflect ,VFX_Soultrap) but in a separated
built because I'm still not sure and need to test them more.
Three Jpeg are provided with a grid describing all these fixes.

The fix redundant with MPP (named "Without_MPP"), including "Summon Fabricant" and
"Summon Bonewolf" spell-fix, forces me to make the ESP dependant of Morrowind ,
Tribunal & BloodMoon ; but, in the others these are put aside, so the ESP's are linked
to Morrowind's Master_File only. Three variants are provided.

All hail Aragon
All hail Horatio
All hail Eldar
May God forgive me and have mercy

Oghma

Installation:
Unzip the 'relevant'* "DaggerSpell-v40.esp" file into "Morrowind\Data Files".
Many ESP are provided :
- with DaggerSpell^2 or DaggerSpell^4 Script (respectively Hyperbola^2 or Hyperbola^4).
- with Spell Fix depending on the presence or not of Morrowind Patch Project (MPP) with
or without few enhancement about unused VFX_Effects added above it.
- Without_MPP                         ->contains all MGEF entries from MPP
- With_MPP                              ->contains only fixes, non-redundant with MPP
- With_MPP+Enhancements->non-redundant fixes along with few enhancements
Consider loading it AFTER "Morrowind Patch Project"
(* : see Revisions notes version 4.0 below)

If you feel the need to make a specific built , the fragments (cleaned of GMST's) of ESP
are available (.espf) in .\fragment . You just have to enter the following command in a
DOS shell with one fragment from each kind following your wish :
type .\Header[...].espf .\AddForgottenSpellSound-MGEFFix.espf .\MGEFFix[...].espf
.\DaggerSpell^[.].espf > .\DaggerSpell-v40.esp


initialization :
From the Morrowind Launcher, select "Data Files" and check the box
next to the "DaggerSpell-v40.esp" file.

When a new game is loaded you need to start the cast reduction script explicitly.
Fortunately, this only has to be done once. From a game, open the console
by pressing the "~" key, and type:

startscript "DaggerSpell"

and press enter. Press "~" again to rid yourself of the console window.
You should notice differences with magicka cost when casting spells.

You can swap from one "DaggerSpell-v40.esp" built to another at any time without worrying
about the warning when loading a savegame. No corruption is to be feared because the 2
scripts are equally structured.


Revisions:

version 4.0
- The cost reduction sticks to original TES2 DaggerFall like "horatio-casting.esp"
from Horatio which is a parabola , but curve as an hyperbola above a adequate
skill level to converge slowly to a '10%' asymptote (Lvl 57 for an hyperbola^2
or lvl 75 for an hyperbola^4) to reproduce a Gaussian function.
- See the charts provided to compare DaggerSpell CastReduce with all other methods.
It detects more accurately the different spell effects' schools and computes the
cost reductions per school in a smarter way.
- Fixes and enhancements for unused sounds and magical_effects entries are
included (see Jpeg's provided)
- Compatibility with "MWEMagickaSkill" by 'Azrael'
- Magicka Regen integrated but not activated (still need further investigation)


version 3.1:
Cleaned for 'evil' GMST's.

Version 3.0 (6 march 2004):
Reduced the maximum casting cost to 50% of the original cost instead
of 10%, which proved too powerful later on in the game. The mod is now
better balanced.

Version 2.1:
Fixed a bug where a damage magicka/absorb magicka/drain magicka spell
cast on the character would also be reduced in damage. Inspired by
sswelms "magicka mastery" script, see: http://fdl.fragland.net/

Version 2.0:
Initial release inspired by Horatio's casting mod.

Fixed several issues:
- Only give spell reduction from a skill level of at least 20 in the
corresponding magic school.
- Ensure that all spells cost at least 1 magicka point.
- Adjusted various spell effects that were incorrectly attributed to the
wrong spell school (for example "bound cuirass", "absorb health", etc.)
- Adjusted various spell effects that are changed by the "sound enhancments" mod.
(i.e. "fire damage" and "poison damage").
- Corrected a miscalculation in the cost of a spell after other spells were cast.

Thanx to Horatio (& Eldar) for his excellent mod. He writes in his introduction:

"Spellcasting Mod v1.2, by Horatio
report any comments or issues to: [email protected]
or PM Horatio on the official ES forums

thanks to wakim and eldar mayiere for inspiring this mod. this mod uses an
improved version of eldar's script for returning a portion of lost magicka
to the player. so he deserves a lot of the credit."

-- This is a CLEAN mod that has no influence on saved games or other plugins. --