Buffs Being Blocked That Shouldn't Be
I am not exactly sure when this bug was introduced, but I didn't start hearing about it until the 1115 or 1118 code was put on the server.
Basically, I have had multiple reports that certain buffs that should stack are now unable to stack. The only ones I actually got enough info on was the Spell "Unfailling Reverence" (shaman charisma buff) blocking "Spirit of Bih`Li" and "Clarity/Clarity II", but I imagine there are probably more. I confirmed that these are indeed being blocked. The only recent changes that I see in the change logs that I think could potentially have something to do with the problem are these: Scorpious2k (Congdar): Eliminated array index error/zone crash in spells Scorpious2k (greggg230): Merchant price faction/charisma fix I imagine that the merchant price one probably isn't the issue, but since this was a charisma spell that was blocking in this case, I figured it was worth noting. This isn't anything too major, and as far as I have seen, it seems to be mostly certain shaman spells that are blocking other spells that they shouldn't. I don't think I have heard of other class buffs blocking incorrectly. |
CHA spells have always caused problems stacking, this is nothing new.
|
Ahh ok. Weird that I didn't hear anything about it until the past week or so and suddenly I have seen at least 3 or 4 reports of it. If it is only cha buffs, then it isn't a big issue. I will keep an eye out for any other stacking issues. Thanks for the quick response, CD!
|
the thign is that CHA present in MANY spells to serve a form of a delimier.
for exmaple if you have spell 1: Slot 1: CHA 0 Slot 2: STR 100 spell 2: Slot 1: CHA 0 Slot 2: CHA 0 Slot 3: STR 100 these 2 spells will stack. what is important that server code must never treat 0 cha towards any stacking comparecens, the moment it does- 50% spells in DB will STOP WORKING I urge devs to CAREFULY look over thsi and make sure than CHA 0 is NEVER been compared towards stacking with each other |
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) { Code:
1913 if(IsBlankSpellEffect(spellid1, i)) Code:
if(IsBlankSpellEffect(spellid1, i) || IsBlankSpellEffect(spellid2, i)) |
Quote:
Hopefully someone can move this to Code Submissions to be updated into the main source :-) |
Did some testing on this and it seems to do exactly what it says. The CHA stacking issue is definitely fixed and I don't see any other stacking issues caused by this, though my testing wasn't very extensive. I mostly just tested a few spells that I know shouldn't stack like Symbol and Temperance and they still didn't (as they should). So, this looks like a nice fix. Thanks AndMetal! You are becoming quite the coder lately lol.
|
All times are GMT -4. The time now is 06:52 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.