Difference between revisions of "Spell Power"

From CrawlWiki
Jump to: navigation, search
m (rip conjure flame)
m (Undo revision 81741 by Hordes (talk))
 
(13 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{version030}}
+
{{version032}}
  
 
Every spell uses a '''spell power''' value to determine their effects: damage, range, duration, etc. You can display your spell power for known spells by bringing up your spell list with '''I''', then '''!''', which will display a screen looking like this:
 
Every spell uses a '''spell power''' value to determine their effects: damage, range, duration, etc. You can display your spell power for known spells by bringing up your spell list with '''I''', then '''!''', which will display a screen looking like this:
Line 11: Line 11:
  
 
==Formula==
 
==Formula==
 
 
===Raw power===
 
===Raw power===
 
First, the game calculates raw spell power using the following formula.
 
First, the game calculates raw spell power using the following formula.
Line 20: Line 19:
 
   * mutations
 
   * mutations
  
*'''Average spell schools''' is the average of all the skills necessary for the spell - up to three schools for some spells (e.g. [[Mephitic Cloud]], which requires Conjurations, Poison Magic, and Air Magic). [[Djinn]] instead use the generic [[Spellcasting]] skill for all of their spells.
+
*'''Average spell schools''' is the average of all the skills necessary for the spell - up to three schools for some spells (e.g. [[Mephitic Cloud]], which requires Conjurations, Alchemy, and Air Magic).
*'''Enhancers''' is a factor calculated from rings of fire, staves of cold, a robe of the Archmagi, etc. You get +1 for every enhancer and -1 for every dampener. If the factor is positive, your spell power is multiplied by 1.5<sup>(factor)</sup>. If it is negative, it is multiplied by 0.5<sup>(factor)</sup>, effectively halving your power every dampener. The factor is capped at ±3.
+
*'''Spell Enhancers''' include [[magical staves]], [[brilliance]], [[Archmagi]], etc. Every enhancer adds one to this count, every dampener subtracts one. If positive, your spell power is multiplied by 1.5<sup>(enhancers)</sup>. If it is negative, it is multiplied by 0.5<sup>(-enhancers)</sup>. Enhancers are capped at ±3.
* '''Mutations''' add a multiplier, depending on the mutation in question.
+
*'''Mutations''' add a multiplier, depending on the mutation in question.
** '''Wild Magic''' increases your spell power, but decreases your success rate. The bonus is ×1.3, ×1.6 or ×1.9 depending on how many levels of this mutation you have.
+
**'''Wild Magic''' increases your spell power, but decreases your success rate. The bonus is ×1.3, ×1.6 or ×1.9 depending on how many levels of this mutation you have.
** '''Subdued Magic''' decreases your spell power, but increases your success rate. The penalty is /1.3, /1.6, or /1.9 depending on how many levels of this mutation you have. This is equivalent to x0.77,  x0.63, or x0.53.
+
**'''Subdued Magic''' decreases your spell power, but increases your success rate. The penalty is /1.3, /1.6, or /1.9 depending on how many levels of this mutation you have. This is equivalent to x0.77,  x0.63, or x0.53.
** '''Augmentation''' is a [[demonspawn mutation]] which increases your spell power and gives a slaying bonus at high HP. The spellpower bonus is ×1.4, ×1.8 or ×2.2 depending on how much augmentation bonus you have. This stacks multiplicatively with the other mutations.
+
**'''Augmentation''' is a [[demonspawn mutation]] which increases your spell power and gives a slaying bonus at high HP. The spellpower bonus is ×1.4, ×1.8 or ×2.2 depending on how much augmentation bonus you have. This stacks multiplicatively with the other mutations.
 +
*[[Ru]]'s '''Sacrifice Courage''' decreases your spell power by 10% for each level of horror.
  
 
{| class="prettytable"
 
{| class="prettytable"
Line 40: Line 40:
 
Once the raw spell power value is determined, a stepdown function is applied to obtain the '''real''' spell power:
 
Once the raw spell power value is determined, a stepdown function is applied to obtain the '''real''' spell power:
  
  Spellpower = 50 * log_2(1 + raw_power/50)
+
  Spellpower = 50 * log_2(1 + raw_power/50) IF raw_power > 50
  
This is capped at 200, and for values under 50 the exact spellpower is used instead.
+
This is capped at 200. If power is under 50, the raw spell power is used with no modification.
  
 
[[File:Spell power stepdown function.png]]
 
[[File:Spell power stepdown function.png]]
  
Approximately, every 50 real spell power is twice as difficult to obtain; and there is an absolute maximum of 200 real spell power. For example, 50 raw spell power is equivalent to 50 real spell power; 100 raw spell power is equivalent to 50 + 50/2 = 75 real spell power; and 500 raw spell power is equivalent to 50 + 100/2 + 200/4 + 150/8 = 168 real spell power. The maximum of 200 real spell power is reached at 750 raw spell power.
+
Approximately, every 50 real spell power is twice as difficult to obtain, with an absolute maximum of 200 real spell power. For example, 50 raw spell power is equivalent to 50 real spell power; 100 raw spell power is equivalent to 50 + 50/2 = 75 real spell power; and 500 raw spell power is equivalent to 50 + 100/2 + 200/4 + 150/8 = 168 real spell power. The maximum of 200 real spell power is reached at 750 raw spell power.
  
=== Example: Spell Power Milestone ===
+
=== Example calculations ===
  
 
   Base Value = (Spellcasting / 2) + (2 * [average_spell_schools])
 
   Base Value = (Spellcasting / 2) + (2 * [average_spell_schools])
  
Since the base value of spell power is capped at '''67.5''', without any enhancers spell power of 150 (raw spell power of 350) is achievable with INT 52. In most cases, however,  spellcasters wear enhancers that making their spell more powerful. One can calculate required base value for hitting specific spell powers. As an example, requirements of 100, 150, and 200 are calculated with INT=40 (quite high!)
+
The base value of spell power, before enhancers/INT/mutations, is capped at '''67.5'''.
 +
 
 +
Without any enhancers, in order to reach 150 spell power, an INT of 52 is required: <code>67.5 * 52/10 = 351</code>.
  
 +
The following table documents the required ''base value'' to reach a given spell power at 40 INT, for a given # of enhancers:
 
{| class="prettytable"
 
{| class="prettytable"
 
! # of Enhancers !! 100 Power !! 150 Power !! 200 Power
 
! # of Enhancers !! 100 Power !! 150 Power !! 200 Power
Line 68: Line 71:
 
|}
 
|}
  
Maximum spell power can only be accomplished with three enhancers, assuming 40 Int and no mutations . If one has Wild Magic Lv 2, then only one enhancer can max out your spell power. However, in this situation, spellcasting success rate falls off dramatically, forcing the player to use a [[ring of wizardry]]. Demonspawn with Augmentation 1 can enjoy max spell power with two enhancers, while one with augmentation 3 can enjoy maximum spell power with only one enhancer.
+
Maximum spell power can only be accomplished with three enhancers, assuming 40 INT and no mutations. If one has Wild Magic Lv 2, then only one enhancer can max out your spell power. However, in this situation, spellcasting success rate falls off dramatically, forcing the player to use a [[ring of wizardry]]. Demonspawn with Augmentation 1 can enjoy max spell power with two enhancers, while one with Augmentation 3 can enjoy maximum spell power with only one enhancer.
  
 
==Spell Range==
 
==Spell Range==
  
For most spells the range starts out at maximum. But for spells like [[Passwall]], the range increases based on spell power, after a step down.  
+
For most spells, range is unaffected by power. But for a few spells like [[Dispersal]], the range increases based on spell power. Range (approximately) increases at a linear rate, so at half power, you are halfway between the minimum and maximum range.
  
If the spell power (pow in the following) is above the power cap, the spell has maximum range. Otherwise:
+
Specifically, if the spell power (pow in the following) is above the power cap, the spell has maximum range. Otherwise:
  
  range = minrange + [pow*(maxrange - minrange) + (powercap/2)] / powercap
+
range = minrange + [(power / powercap) * (maxrange - minrange)] ; round half up
  
That's a bit involved.  It helps to notice that the addition of powercap/2 is to do rounding up (otherwise it will round down). So we have:
+
==Monsters==
 +
For monster spells, the spellpower is usually <code>12 * [[HD]]</code>.<ref>{{source ref|0.30.1|mon-cast.cc|1104}}</ref> Although, some spells have a different HD factor:
 +
*[[Cause Fear]]: 18
 +
*[[Call Down Lightning]]: 16
 +
*[[Doom Howl]] and [[Mesmerize]]: 10
 +
*[[Siren Song]] and [[Avatar Song]]: 9
 +
*[[Mass Confusion]] and [[Confusion Gaze]]: 8
 +
*[[Olgreb's Toxic Radiance]], [[Orb of Destruction]], and [[Freeze]]: 8
 +
*[[Monstrous Menagerie]], [[Iskenderun's Battlesphere]], [[Ignite Poison]], and [[Irradiate]]: 6
 +
*[[Summon Dragon]] and [[Summon Hydra]]: 5
 +
*[[Chain of Chaos]]: 4
  
  range = minrange + [pow*(maxrange - minrange)] / powercap
+
Please note that most monster spells have different damage formulas than the player version. For example, players cast [[Magic Dart]] dealing <code>1d(3 + power/5)</code> damage, while monsters cast it at <code>3d(4 + power/100)</code>.
  
This is the ratio of pow to powercap, over the possible ranges. In effect, it is linear in range with spell power - once you get to about halfway between the maximum and minimum ranges, you are at about half of the power cap. 'About', because of the round up vs round down function.
+
==History==
 +
*Prior to [[0.31]], monsters' OTR used 8 * HD spellpower instead of 12 * HD.
 +
*In [[0.28]], the last two spells which didn't involve spell power ([[Blink]] and [[Passage of Golubria]]) now use it.
 +
*Prior to [[0.26]], spell power display was fuzzed, displayed in terms of bars (##.) instead of percentages. Bars did not have equal value; lower bars represented less numerical power per bar.
 +
*Prior to [[0.18]], the Wild and Subdued Magic mutations had larger effects on spellpower.
 +
*Prior to [[0.10]], a different stepdown function for spellpower was used.
  
==History==
+
==References==
* In [[0.28]], the last two spells which didn't involve spell power ([[Blink]] and [[Passage of Golubria]]) now use it.
+
<references />
* Prior to [[0.26]], spell power display was fuzzed, displayed in terms of bars (##.) instead of percentages. Bars did not have equal value; lower bars represented less numerical power per bar.
 
* Prior to [[0.18]], the Wild and Subdued Magic mutations had larger effects on spellpower.
 
* Prior to [[0.10]], a different stepdown function for spellpower was used.
 
  
 
[[Category:Magic]]
 
[[Category:Magic]]

Latest revision as of 11:03, 7 November 2024

Version 0.32: This article is up to date for the latest stable release of Dungeon Crawl Stone Soup.

Every spell uses a spell power value to determine their effects: damage, range, duration, etc. You can display your spell power for known spells by bringing up your spell list with I, then !, which will display a screen looking like this:

 Your Spells                      Power
a - Sting                         100%
c - Call Imp                      44%
d - Iron Shot                     11%

Each individual spell has a spell power cap placed on it. A cap of 100 means that if your spell power is higher than 100, it will be set to 100. This allows for low-level spells to scale quickly with skill, but prevents them from getting too strong.

Formula

Raw power

First, the game calculates raw spell power using the following formula.

 ((Spellcasting / 2) + (2 * [average_spell_schools]))
 * enhancers
 * (Intelligence / 10)
 * mutations
  • Average spell schools is the average of all the skills necessary for the spell - up to three schools for some spells (e.g. Mephitic Cloud, which requires Conjurations, Alchemy, and Air Magic).
  • Spell Enhancers include magical staves, brilliance, Archmagi, etc. Every enhancer adds one to this count, every dampener subtracts one. If positive, your spell power is multiplied by 1.5(enhancers). If it is negative, it is multiplied by 0.5(-enhancers). Enhancers are capped at ±3.
  • Mutations add a multiplier, depending on the mutation in question.
    • Wild Magic increases your spell power, but decreases your success rate. The bonus is ×1.3, ×1.6 or ×1.9 depending on how many levels of this mutation you have.
    • Subdued Magic decreases your spell power, but increases your success rate. The penalty is /1.3, /1.6, or /1.9 depending on how many levels of this mutation you have. This is equivalent to x0.77, x0.63, or x0.53.
    • Augmentation is a demonspawn mutation which increases your spell power and gives a slaying bonus at high HP. The spellpower bonus is ×1.4, ×1.8 or ×2.2 depending on how much augmentation bonus you have. This stacks multiplicatively with the other mutations.
  • Ru's Sacrifice Courage decreases your spell power by 10% for each level of horror.
Mutation Level HP <50% HP > 50% HP >66% HP >75% HP >83%
1 0 1 1 1 1
2 0 1 1 2 2
3 0 1 2 2 3

Step down

Once the raw spell power value is determined, a stepdown function is applied to obtain the real spell power:

Spellpower = 50 * log_2(1 + raw_power/50) IF raw_power > 50

This is capped at 200. If power is under 50, the raw spell power is used with no modification.

Spell power stepdown function.png

Approximately, every 50 real spell power is twice as difficult to obtain, with an absolute maximum of 200 real spell power. For example, 50 raw spell power is equivalent to 50 real spell power; 100 raw spell power is equivalent to 50 + 50/2 = 75 real spell power; and 500 raw spell power is equivalent to 50 + 100/2 + 200/4 + 150/8 = 168 real spell power. The maximum of 200 real spell power is reached at 750 raw spell power.

Example calculations

 Base Value = (Spellcasting / 2) + (2 * [average_spell_schools])

The base value of spell power, before enhancers/INT/mutations, is capped at 67.5.

Without any enhancers, in order to reach 150 spell power, an INT of 52 is required: 67.5 * 52/10 = 351.

The following table documents the required base value to reach a given spell power at 40 INT, for a given # of enhancers:

# of Enhancers 100 Power 150 Power 200 Power
0 37.5 87.5 187.5
1 25 58.3 125
2 16.7 38.9 83.3
3 11.1 25.9 55.6
1 +
Wild magic 2
12.5 29.2 62.5

Maximum spell power can only be accomplished with three enhancers, assuming 40 INT and no mutations. If one has Wild Magic Lv 2, then only one enhancer can max out your spell power. However, in this situation, spellcasting success rate falls off dramatically, forcing the player to use a ring of wizardry. Demonspawn with Augmentation 1 can enjoy max spell power with two enhancers, while one with Augmentation 3 can enjoy maximum spell power with only one enhancer.

Spell Range

For most spells, range is unaffected by power. But for a few spells like Dispersal, the range increases based on spell power. Range (approximately) increases at a linear rate, so at half power, you are halfway between the minimum and maximum range.

Specifically, if the spell power (pow in the following) is above the power cap, the spell has maximum range. Otherwise:

range = minrange + [(power / powercap) * (maxrange - minrange)] ; round half up

Monsters

For monster spells, the spellpower is usually 12 * HD.[1] Although, some spells have a different HD factor:

Please note that most monster spells have different damage formulas than the player version. For example, players cast Magic Dart dealing 1d(3 + power/5) damage, while monsters cast it at 3d(4 + power/100).

History

  • Prior to 0.31, monsters' OTR used 8 * HD spellpower instead of 12 * HD.
  • In 0.28, the last two spells which didn't involve spell power (Blink and Passage of Golubria) now use it.
  • Prior to 0.26, spell power display was fuzzed, displayed in terms of bars (##.) instead of percentages. Bars did not have equal value; lower bars represented less numerical power per bar.
  • Prior to 0.18, the Wild and Subdued Magic mutations had larger effects on spellpower.
  • Prior to 0.10, a different stepdown function for spellpower was used.

References