Forum Settings
       
Reply To Thread

how the resist system worksFollow

#1 Jul 01 2010 at 1:04 PM Rating: Excellent
Prathun recently posted an explanation here of how the resist system works. I thought it was interesting enough that I would copy it over.

  
Pull the spell's resist modifier from the spell (or the spell list override, if one exists). 
Adjust the resist modifier for applicable focus effects. 
Check for fear immunity.  If roll is made, resist spell. 
Check for resistance to the spell effect.  If roll is made, resist spell. 
Check for Sanctification.  If roll is made and spell is not no_resist, resist spell. 
Calculate target's resistance chance applicable to this spell.   
     If spell's resist type is no_save, spell lands.   
     Otherwise, magic checks against magic, fire against fire, chromatic checks lowest, prismatic checks average, etc.  The capped resistance score is used. 
Set resist chance to 15 if the spell effect is a lull. 
Adjust resist chance for level difference between caster and target. 
     Set temp level difference to (target level - caster level). 
     If target is at least level 67 and target is an NPC, temp level difference is set to (66 - caster level) or 0, whichever is greater. 
     If target is a PC, and caster level is at least 21, and temp level difference is greater than 15, set temp level difference to 15. 
     If target is an NPC, and temp level difference is less than -9, set temp level difference to -9. 
     Set level modifier to (temp level difference * temp level difference / 2) 
     If temp level difference is negative, make level modifier negative. 
     If target is an NPC and caster is far below target's level, set level modifier to 1000. 
     Add level modifier to resist chance. 
Adjust resist chance for spell's resist modifier. 
If effect is damage and target is a non-mercenary NPC... 
     If target is at least level 67, level difference is set to (66 - caster level) or 0, whichever is greater. 
     If target is at least level 17 and level difference is greater than 0, add (2 * level difference) to resist chance. 
If resist chance is greater than spell's max resist and the max resist is not 0, set the resist chance to max resist. 
If resist chance is less than spell's min resist and the min resist is not 0, set the resist chance to min resist. 
Roll a random number between 0 and 200. 
If the roll is greater than the resist chance, spell lands. 
If the roll is not greater than the resist chance and the spell does not allow partial resists, resist spell. 
If spell effect does not apply damage, spell lands. 
Otherwise, spell effect applies damage.  Calculate partial resist. 
     If the resist chance is less than 1, set the resist chance to 1. 
     Partial resist modifier is set to ((150 * (resist chance - roll)) / resist chance). 
     If target is a non-mercenary NPC... 
          If target is higher level than caster, and target is at least level 17, and caster is level 50 or below, add 5 to partial resist modifier. 
          If target is at least level 30 and caster is level 50 or below, add (casterlevel - 25) to partial resist modifier. 
          If target's level is less than 15, subtract 5 from partial resist modifier. 
     If caster is an NPC... 
          If target is at least 20 levels higher than caster, add (level difference * 1.5) to partial resist modifier. 
     If partial resist modifier is less than 0, set partial resist modifier to 0. 
     If partial resist modifier is greater than 100, set partial resist modifier to 100. 
     Spell lands.  Partial resist modifier is used to calculate resulting damage. 


Edited, Jul 1st 2010 3:05pm by Groogle
#2 Jul 01 2010 at 1:06 PM Rating: Good
I used code tags to try to preserve the original formatting but because of the petite display allakhazam now uses (seriously guys, three inches of blank space = wtf :() it is now a scrolling table. Since the formatting is important for the meaning, I'm leaving it like this. You can click over to EQL to see a better formatted (and colored) version.
Reply To Thread

Colors Smileys Quote OriginalQuote Checked Help

 

Recent Visitors: 100 All times are in CST
Anonymous Guests (100)