Wheel of Time - Morrowind Mod

Magic System

[Home] [Members] [Links and Downloads] [Forums] [Modder's Resource] [Files and Pictures] [Design Specs] [Project Plan] [What's New] [Issues] [Search]


Up

Table of Contents

 

Requirements

Born with the spark

Learn to Channel

Spells

     Needed spells

     Removed Morrowind spells or abilities

Channeling

     Summary_of_channeling_logic

     Beginning_variables

     Checking for magic block area and terangreal wells

     Checking for burnout or stilled

     Checking for shielded

     Checking for blocked

     Getting the current and max fatigue levels

     Getting the current and max magicka levels

     Check for fatigue level

     Shield breaking

     Casting spells

     Alternate logic

Magical Items

     Angreal and Saangreal

     Terangreal


This section will have a description of how magic works in the WOT, how it works in Morrowind, and how it can be made to work like in WOT.  

There is existing scripting out there that does this.  I think we will have no problem getting the developer to contribute to this mod.

Requirements:

The requirements describe how channeling and magic work in the Wheel of Time.  They may or may not be implementable in Morrowind.  The following information has been taken from the Guide.

  • There are two types of channelers;
       - Those with the inborn spark who will channel no matter what, whether they wish to or not. 
       - And those who need to be taught to embrace the source and channel.
  • Drawing and channeling without benefit of guidance or training results in death for four out of five women born with the ability.  This death often takes the form of a lingering sickness that saps the individual of life energy.  The first time, the sickness comes on after a few hours.  As time goes by, it comes closer and closer to the moment of channeling until they merge.  At this point, if they have not learned control, death is inevitable.
  • Male players use saidin (sigh deen).  This causes bad things to happen to the male until book 9 when it is cleansed. 
  • Female players use saidar (sigh dar rhymes with bar).  No bad effects.
  • Players have a capacity that grows over time.  Over time they can draw more, learn more complex weaves (spells). 
  • Regeneration happens when the player's fatigue is restored.
  • Only men can heal women fully.  Only women can heal men fully.  (Recently answered on Robert Jordan's blog, by the man himself.)

Inborn spark

Players who pick a magic class or the magic skills as their primary skills will be those who are born with the spark.  They are the type of channelers that would channel no matter what.   They will be able to learn any spell that they are taught.  Going by Morrowind, they will go up and up in strength. 

The player must then join the faction suitable to the race.  See the questing sheet for Starting Quests for the player who is a magic wielder.  Quests.htm or Quests.xls.

Wilders

Wilders are those that are considered born with the spark, have passed through the sickness stage, and haven't found a faction to train them. 

  • Wilders will have blocks that will inhibit their ability to embrace the source whenever they need to.  See Checking for blocked below for calculation of this difficulty.
  • Spells are protected by the factions and wilders will have difficulty finding any spells. 

Players may play as a wilder but it will be a difficult road. 

Dual class fight/mages

If a player picks both warrior and magic skills during the character creation they will be dual classed.   The difficulty in scripting will be managing these players.  Those who chose high magic/low fighting will be considered channelers.  Those who pick low magic/high fighting skills will be considered fighters.  Both must be trained by a faction in order to use those magic skills. 

We should set some type of skill balance limit that would determine whether the faction will let them go.  Aes Sedai normally let go those who have low magic skill.  A check for magic/fight/stealth skills will be done and will determine if the player will be allowed to complete training in a channeling group. 

If the player is male, he will still be an Ash'aman.  Or blocked.  There is no getting around this.  Maybe the Black Tower will find other uses for a male with little magic talent.

A low level magic user, as also a wilder, will have trouble finding any of the higher level spells, or any spells at all.  No matter how much they develop their magic abilities, the spells will still be out of reach.  There will be ways of getting many spells that the factions hold close but they will be difficult and dangerous. 

Learnt spark

It would be nice if any player could learn to channel.  They would have to forsake their fighting and join an association to do this.  They would be tied to this association forever after.  The different factions have different levels of control over their members. 

Morrowind changes

  • No potions to drink to restore mana.  It just auto-restores after a while.  Might need actual rest if the player has cast all the way to the end of their mana limit.  Although Nyneave has made some potions that helped Moraine recover fatigue.  Maybe there will be some potions that can help restore fatigue but they won't restore fully. 

Spells

Need a whole big section on this.  We need to list all the Morrowind spell effects.  Then decide which ones stay, which ones are removed, and any that need to be added.  Most will be renamed.  Some spells might need to be scripted spells.

Removed Morrowind spells or abilities

  • Levitation.  None in WOT except a bunch of people can levitate another person or object a bit.

  • Mark/Recall.  Replaced by the fast magical transport.

  • Heal self.  Player can't heal self.  Must get another to do this.  Will affect battles a lot unless there is a companion along that can heal.

  • No potions to restore magicka.  It just auto-restores after a while.  Might need actual rest if the player has cast all the way to the end of their mana limit.

Channeling

Lord Raven has been working on the One Power mod.   Below is a draft of how channeling and casting will work in the WOT.  It needs some more work and maybe the summary needs to be ratified by some of the fnas.

Summary of channeling logic

As long as the player does not raise their hands for casting, the mana bar will be set at zero.  Raising the hands will trigger the script to grasp the source.  This will trigger a check of the player's status. 

If a player is found to be stilled or burnt out, they cannot embrace the source.

If the player is found to be blocked they will have only a 60% chance of embracing the source each time they raise their hands to embrace the source.  The check does not occur if the player switches spells. 

Once the source has been embraced, the player may cast until they run out of mana or fatigue.  See casting spells below for that logic.

After the player has run out of mana they may attempt to embrace the source again.  The player will be able to grasp the source as long as their fatigue does not fall to a certain level.   The more fatigued the player, the more chance of failure or burnout.

Beginning variables

This is just a draft.  Other variables might be found to be needed.

Global Variable

Short WOT_MagicBlocked

0=false, not blocked 

1=true, blocked

Global Variable

Short WOT_MagicBurntOut

0=false, not burnt out  

1=true, burnt out or stilled

Global Variable

Short WOT_Shielded

Alternate 1:  True/False check

0=false, not shielded

1=true, shielded

 

Alternate 2: Number shielding

0=not shielded

1=shielded by 1

2=shielded by  2

3=shielded by 3

...

13=shielded by 13

 

We can also have another variable that indicates if the shield is tied off or not.  That could also have 0-13 to determine the number tied and number being held actively.  Need some brainstorming on how a person could break out of a shield.  A special spell or talent or something?  How would the individual points be associated to specific NCP's? 

Global Variable

Short WOT_Gender

0=male

1=female

Global Variable Short WOT_NoMagicArea

0=location that allows magic

1=location that disallows magic area

Global Variable Short_WOT_NoMagicOverride

0=no override

1=magic area block override - player activates a ter'angreal.

Local Variable?

Float MaxFatigue

Contains the player's fatigue level if they were fully rested.

Local Variable

Float CurrentFatigue

Contatins the player's current fatigue level

Local Variable

Float ResetFatigue

Contains the difference between the max and current

Local Variable

Float SpellFatigue

Contains the amount of fatigue to be deducted for spell. 

May not be needed.

Local Variable?

Float MaxMagicka

Contains the player's mana level if they were fully rested.

Local Variable

Float CurrentMagicka

Contatins the player's current mana level

Local Variable

Float ResetMagicka

Contains the difference between the max and current

Local Variable

Float SpellMagicka

Contains the amount of mana to be deducted for spell. 

May not be needed.

 

Checking for magic block area and ter'angreal wells

If the player is an area that does not allow magic, the WOT_NoMagicArea will be set to 1.  This includes Far Madding cells.  If the area allows magic, this variable will be set to 0 (zero).

When the WOT_NoMagicArea is set to 1, the Short_WOT_NoMagicOverride will be checked.  When the player activates a ter'angreal that is set as a well, the well will contain only a specific amount of mana.  Each ter'angreal well has a set amount.  While it is in an area set as WOT_NoMagicArea it will set the mana level to the maximum.  When the player goes to a non-magic area, it will not continue to reset and stay the maximum unless spells are cast.  Then it will start to drain.

Checking for burnout or stilled

WOT_MagicBurntOut is then checked, if block check results in false.  0 = false, not burnt out.  1 = true, burnt out.  If burnt out check results in true, the player cannot grasp the source.  If burnt out check results in false, the player will then proceed to the fatigue check.

Checking for shielded

WOT_Shielded is then checked to see if the player is shielded.  If so, they will fail to grasp the source.

Also see alternate for variable domains.  0-13 could indicate the number of channelers shielding the player.

Question:  Do we have the ability to break a shield?

Checking for blocked

WOT_MagicBlocked is checked.  If it is set to 0 (false), the player is not blocked and next check is done.  If it is set to 1 (true), the script will do a random number check.  This should result in 60% of the time the player is successful in embracing the source.  40% failure.

Getting the current and max fatigue levels

This code is from Kiriel's Enchanted Paintings mod.  It will find out the maximum and current fatigue for the player.  There is no way to find the true maximum so the current fatigue is recorded, then the maximum is found by modifying the current fatigue by 10000 - this will only raise it to whatever is the player's maximum.  It won't add 10000.  Then the difference is found and the fatigue is reset back to the recorded level.

Set CurrentFatigue to ( Player ->GetFatigue )
Player->ModCurrentFatigue 10000
Set MaxFatigue to ( Player -> GetFatigue )
Set ResetFatigue to ( MaxMagicka - CurrentFatigue )
Player->ModCurrentFatigue ResetFatigue

Getting the current and max magicka levels

This code is from Kiriel's Enchanted Paintings mod.  It uses the same method as fatigue.  It may not be the method used for WOT.  It depends on how mana will be used and drained.

Set CurrentMagicka to ( Player ->GetMagicka )
Player->ModCurrentMagicka 10000
Set MaxMagicka to ( Player -> GetMagicka )
Set ResetMagicka to ( MaxMagicka - CurrentMagicka )
Player->ModCurrentMagicka ResetMagicka

Check for fatigue level

Assuming the above checks are passed if the player's fatigue level is 45% or more the player will have 100% chance of embracing the source.  As fatigue goes down, their chance of success will go down and the chance of burnout will increase.

Once the player hits 8% fatigue, they will have 0% chance of gaining the source.

Once the player hits 20% fatigue, a chance of burnout will begin.  This chance will go up as fatigue goes down until the player hits 9% fatigue.  At that point, the chance of burnout will be at its max - 20%

Between 45% and 8% there will be increasing chances of failure and burnout. 

Shield breaking

At the shield check, we can give the player an opportunity to break the shield.

Requirements: 

  • Player has acquired/learned the spell of breaking a shield.

  • Shield can be broken if number of channelers participating in the shield < 13

  • And number of participants is less ???

  • And percent of hard points is ???

  • And the player level is ???? as related to the above...

  • I will come up with some logic here.  Or others can take a stab at it as well.  Just need to fiddle around a bit in a spreadsheet and come up with something that looks right.  A level 20 who is shielded by 4 and 2 are hard points should be able to break the shield, if they have learned how......That is my baseline I will work on.  Maybe change that too.

 

Short BreakShieldMsg ;0=No, 1=Yes

Short BreakShieldAns

 

If ( WOT_Shielded > 0 )

    If ( WOT_PlayerShieldBreakSpell == 1 )

        MessageBox "You are shielded by %WOT_Shielded channelers.  %WOT_ShieldedHard shields are tied off.

              Do you want to try to break the shield?"  "Yes" "No"

    set BreakShieldMsg to 1

    Else

        MessageBox "You are shielded.  You cannot embrace the source."
    EndIf


If ( BreakShieldMsg == 1)

    SET BreakShieldAnsto GetButtonPressed

    If ( BreakShieldAns > 0 )

        Set BreakShieldMsg to 0

        StartScript WOT_BreakShield

    EndIf

EndIf

Casting spells

This part is open.  Should we use the normal Morrowind way of having each spell cost a certain amount and that is it?  Or should mana/fatigue drain constantly while the person is embracing the source and have additional drops when a spell is cast?  A channeler can shield another for hours.  Many times people embrace the source and do nothing; they aren't worried they won't be able to cast the spell if they hold it too long.  They mainly worry about drawing too much.

Alternate logic

We could also script this to do the following:

1)  Each time the player uses up their mana and tries again, the chance of burnout and failure go up.  This would require us to track the number of times the player attempts to embrace the source, their fatigue levels, etc.  At first I was thinking this was the way to go but basing everything on fatigue seems faster and will essentially do the same thing with less code.

2)  Test for shielded, do we need one?  How will a shield spell be implemented?

3)  Should we tie mana and fatigue more closely?  Mana determines the level of the caster and the rate that fatigue will reduce.  The more maximum mana, the slower fatigue lowers.  Then, make the player have a continuous supply of mana until the fatigue brings it down. 

4)  Or go even further and have the current fatigue also tied to the mana level.  Whatever percent fatigue a player has will be the percent mana a player has.  Then use that mana level to determine the drain rate of fatigue?


Magical Items

There are many types of magical objects in the Wheel of Time.  Most are left over from the Age of Legends. 

Angreal and Sa'angreal

Both Angreal and Sa'angreal are items that allow the channeler to channel more power than they normally can.  They also buffer the channeler from pulling too much.  The difference is in strength.  Sa'angreal allow much more power to be drawn than angreal although individual items have a wide range of the amount of power that can be pulled.

Sa'angreal are much rarer than angreal.  

There are several known caches of these items.  Most notably in the White Tower, who believes that all angreal, sa'angreal, and ter'angreal are property of the White Tower, whether or not the Tower currently has possession of the object.  There was another cache in Ebu Dar but that was cleared out.

For our game purpose, I am sure there are other undiscovered caches, maybe in caves, maybe in cellars, maybe in private collections in houses.  These objects are also found in palace collections such as Tanchicho and Tear.  I would bet that objects are occasionally found in homes of those that can afford some trinkets, the owners not knowing what they are.  Junk stores, luxury item stores, peddlers may occasionally also come across them not knowing what they are.

Ter'angreal

Ter'angreal are object that have specific purposes.  Thousands of ter'angreal are stored at the White Tower.  Very little have  known purposes.  It is very dangerous to study them.  Most scholars will channel a little spirit into them to try to determine what they do.  If spirit is the power that kicks off the ter'angreal, very unpleasant results can occur.

The table below contains know properties of ter'angreals.  We may make ter'angreals to do many other things as well.  I believe we will implement ter'angreals as enchanted items.  There may be a few other enchanted items such as the heron marked swords.

Some ter'angreals can be accessed by anyone, not just a channeler.  Most need someone to channel the correct power into them.

Purpose

Enter Tel'aran'rhiod.

There are several of these known.  Some require channeling, others do not.

Bind oaths.  We know there are at least two of these.  One says 111 and the other says ???  So, there are probably hundreds of them.
Doorways or rings that take the person to another world/level of reality. 
  • Known ones take the person to the foxes.  This one used to be in Rhoudian.   It was taken away and then destroyed.
  • Another to the snakes.  This is located in the basement of the Stone of Tear.
  • Another in the White Tower is used for testing accepted.  Those rings will allow the person to experience, as real, their greatest fears - from the past, present and future.
a'dams.  These all one person to control another with the power.  The person leashed must do what the person in control wants or suffer what the handler can think up.
 
 
 

The Wheel of Time and all its subject matter is copyright by Robert Jordan.  Morrowind, the gaming engine, and the modules created for it are copyright by Bethesda.  This project is a not-for-profit endeavor.  It is done in homage to a great fantasy series.  It is not intended to be an official representation of the works of Robert Jordan.
For problems or questions regarding this web contact the webmaster: Kiriel@direcway.com.
Last updated: August 31, 2005.