Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- For: Level 20 and up
- Subject: Blog Post - Duende - 1/23/18 - Spell Damage Caps
- Posted: Tue Jan 23 16:38:06 2018
- We recently completed one of the Immortal for a Day days, which was
- productive and enlightening, and will be the topic of a later blog post.
- However, one of the topics that arose centered around some observed damage
- not matching the speculated damage, and possible reasons for it. We spent a
- few hours debugging and correlating damage sources and damage output, and
- discovered that while the complaint was accurate, it was based on something
- expected and described, but which might be currently underappreciated. So
- the topic of this blog post will be magical damage caps.
- We have about 100 spells that qualify as nukes; spells whose primary effect
- is a one-time burst of damage. Nearly all spells differ in some way in
- their implementation, but the general shape of them is thus:
- All nukes have a base damage amount and a damage type, visible in their help
- files, like `*Deals flames (3.1 base) damage.`. That base damage receives a
- generic 'adjustment', which looks like halving damage in pk, reducing damage
- further in pk-half-damage rooms, increasing the damage on the faerie plane
- dealt from faeries to non-faeries, etc. There is an additional damage
- coefficient which multiplies the damage by a lookup based on the caster's
- level; this coefficient ranges from *2 at level 1, to *80 at level 100, to
- *180 at 250, to *550 at level 500. In our example spell Fireball, there is
- an additional 'fireballs' multiplier, which is typically 1 but has a (caster
- level/350) chance to have 2 fireballs, effectively dealing double damage.
- Fireball's skillpower is to increase the damage by (skillpower%), so that
- also modifies the amount of damage. The amount of damage dealt is then fed
- into saves-against checks, which has a ton of components.
- The saves-against checks for fireball takes the product of the spell's
- damage type and adds the caster's bonuses: (+fire-damage-prcnt). After
- adding the caster's bonuses, it takes into account all of the victim's
- bonuses: resistance to fire (-25); vulnerability to fire (+25); global save
- bonuses; resistance stats (-fire-prcnt); SVS (too complicated for this).
- After all of the bonuses are calculated, that is the final damage output
- from the fireball spell, and similar occurs with all other nukes. However,
- the 'final damage output' is then subject to additional constraint- for
- sanity's sake, and to prevent anything really crazy from occurring, skills
- have individual damage caps. Because one of the first calculations in
- determining damage places heavy emphasis on caster level, it's totally
- plausible that a mis-set skill could deal enormous amounts of damage
- incorrectly, and the caps were presumably meant to prevent that.
- Unfortunately, while they succeed in that, they were probably mis-tuned, so
- instead of only coming into play at 150% of the anticipated damage output or
- something, lots are set at 80% of the damage output, meaning a level 200
- would deal the same damage with the spell as an archon. Fixing this is
- relatively straightforward, but won't be possible for a few months, as it'll
- take lots of testing and refinement.
- We could remove damage caps, but that would have adverse effects on players,
- as exemplified by a few spot-checks. It turns out that firebolt hurts a
- lot, but is capped at dealing 5k damage- it turns out without the damage
- caps, it would deal about 12k damage, a hit which few could survive.
- Tweaking the values upward would help make the math add up, but that benefit
- isn't worth the risk of commensurate increased damage, like the
- aforementioned firebolt. We could determine what, for each spell, the
- intersection of damage-cap at archon and base-damage would be, but that
- would lower the damage for lower levels in ways that may not be desirable.
- We may decide the caps are weird as-is, and simply display messages to
- players when they hit the caps, the way that imms can see with debug right
- now. The eventual answer probably lies somewhere in the middle, but
- requires more study regardless. Because that study will require time, and
- the implementation moreso, and we're probably a good month+ away from next
- reboot, the easy answer is to simply publicize the caps, and let everyone
- determine how to proceed on their own. I'm sure there'll be some feedback
- on this, which #troll might be the best outlet for.
- -Duende
- acid blast: 500 acid breath: 850 abjure: 450
- air evocation: 500 acid mist: 2000 airblast: 1500
- animate weapon: 3500 backstab: 3500 bash: 5000
- battle rage: 1000 burning ember: 2250 bathe: 500
- bleakness: 1000 call lightning: 1200 cause light: 200
- cause serious: 350 chill touch: 350 cure blindness: 750
- cure critical: 750 cure light: 350 cure serious: 550
- chain lightning: 1450 circle of thorns: 1000 conjure boulder: 1600
- channel faith: 1200 conjure ironbolt: 1750 charge: 1000
- [C]ontinue [R]edraw [B]ack [E]xit:
- The Pendant of Lord Maldra shines briefly with a soft violet light!
- [C]ontinue [R]edraw [B]ack [E]xit:
- cure mutilation: 750 diseased cloud: 2000 deafen: 500
- divine calling: 3600 energy drain: 500 earth invocation: 350
- earth evocation: 300 extinction: 1250 energy orb: 500
- ember carom: 512 flame wind: 1000 frost: 600
- fireball: 575 fire breath: 900 frost breath: 950
- feeding: 850 fire evocation: 600 firebolt: 5000
- famine: 650 flintstrike: 999 fungal growth: 1000
- gas breath: 750 geisteblitz: 2000 grapple: 1500
- harm: 650 heal: 500 high explosive: 2000
- herald death: 3500 harrow: 2000 ice storm: 1900
- ice wind: 1000 icebolt: 4500 ice whip: 1400
- iceball: 1500 kill: 1400 kick: 750
- lightning bolt: 475 lightning breath: 1000 lightning evocation: 2500
- lightning shroud: 1750 leech: 650 landslide: 1200
- minerals evocation: 350 magic dart: 100 magic bomb: 2040
- mutilate: 750 necrotic explosion: 225 one with the forest: 750
- paralyze: 150 poison gas: 350 pestilence: 100
- pustulate: 1500 psychic rebellion: 3500 quicksilver blast: 4500
- refresh: 250 reflective fireball: 1750 spark: 160
- shocking grasp: 125 shadow light: 750 soul sacrifice: 5000
- sweep: 1500 summon stake: 3600 searing touch: 1000
- thunderclap: 400 tremor: 900 telekinetic punch: 1000
- telekinetic pierce: 1000 telekinetic explosion: 1250 telekinetic bash: 850
- thunderstorm: 1900 telekinetic wave: 1150 tremolo: 1000
- water evocation: 700 waterspout: 350 wrath of the bear: 1250
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement