View Single Post
  #5  
Old 08-29-2008, 07:45 PM
AndMetal
Developer
 
Join Date: Mar 2007
Location: Ohio
Posts: 648
Default

This came up on the Storm Haven forums, so I figured I'd mention what I have come up with so far, since this is still an issue.

After doing some digging (thanks to #mlog SPELLS__STACKING on), it appears this is failing in the function Mob::CheckStackConflict:
Code:
 1992 		if(sp2_value < sp1_value) {
 1993 			mlog(SPELLS__STACKING, "Spell %s (value %d) is not as good as %s (value %d). Rejecting %s.",
 1994 				sp2.name, sp2_value, sp1.name, sp1_value, sp2.name);
 1995 			return -1;	// can't stack
 1996 		}
And I believe it is because there should be a check, not only for the first spell, but also the 2nd spell to see if the slot is blank. If that's the case, we can just change this
Code:
 1913 		if(IsBlankSpellEffect(spellid1, i))
 1914 			continue;
to this:
Code:
		if(IsBlankSpellEffect(spellid1, i) || IsBlankSpellEffect(spellid2, i))
			continue;
I'll try compiling this here in a few and see if it works.
__________________
GM-Impossible of 'A work in progress'
A non-legit PEQ DB server
How to create your own non-legit server

My Contributions to the Wiki
Reply With Quote