We have begun migration of most wikis to our new host, Amazon Web Services. All but the top 100 wikis are in read-only mode until the migration is complete. Estimated completion: End of Week.

Spell Calculations (Diablo I)

From Diablo Wiki
Jump to: navigation, search

Calculating the magnitude of a spell (damage, healing, or duration) is implemented in Diablo I using several different variables and specific functions.[1]

Variables[edit | edit source]

  • slvl: the level of the spell
  • clvl: the level of the character
  • mlvl: the level of the monster in context
  • maxmana: maximum mana of the character
  • maxlife: maximum hitpoints of the character

Functions[edit | edit source]

  • [ ]: round down
  • Rnd[x]: random number in the range 0 to x - 1
  • Rnd[clvl]: random number in the range 0 to character level - 1
  • Rec(slvl, slvl0): a recursive function defined as follows,
    • Rec(0, slvl0) → [slvl0]
    • for slvl > 0; Rec(slvl, slvl0) → [Rec(slvl - 1, slvl0) * 9/8]
  • Itt(n, value): an iterative function, defined as follows,
    • Itt(0, value) → value
    • for n > 0; Itt(n, value) → Itt(n - 1, value) + value

References[edit | edit source]