Page 1 of 1
Common bug or not (L2Effect)
Posted: Sun Dec 23, 2012 7:07 pm
by RmzVoid
Use two buffs with same abnormal type (i.e. Ghost Walking and Ultimate Evasion)
First use Ultimate Evasion, after several seconds use Ghost Walking.
UE as expected will be replaced by GW... effect of UE (icon and stats bonus) disappear.
But not complete, after 30 seconds i got a system message - "Ultimate Evasion has worn off" and after several seconds "Ghost Walking has worn off"
This happens with simular buffs. Is this common bug or just mine?
Re: Common bug or not (L2Effect)
Posted: Sun Dec 23, 2012 7:15 pm
by MELERIX
is normal imho, due this:
Code: Select all
# If True, when effects of the same stack group are used, lesser effects will be canceled if stronger effects are used. Otherwise stacking of things like multiple levels of the same buff will be allowed.# Default: TrueCancelLesserEffect = True
Re: Common bug or not (L2Effect)
Posted: Sun Dec 23, 2012 7:28 pm
by RmzVoid
Is this right that replaced effect task still running and prints message to user then it abnormal time left?
what we do then we land same buff:
[CharEffectList.java addEffectFromQueue method]
Code: Select all
for (L2Effect e : _buffs) { if ((e != null) && (e.getSkill().getId() == newEffect.getSkill().getId()) && (e.getEffectType() == newEffect.getEffectType()) && (e.getAbnormalLvl() == newEffect.getAbnormalLvl()) && e.getAbnormalType().equals(newEffect.getAbnormalType())) { e.exit(); // exit this } }
- effect properly stopped and removed.
what we have if no same skill replaces, but same abnormal type (same code location):
Code: Select all
// skill.exit() could be used, if the users don't wish to see "effect // removed" always when a timer goes off, even if the buff isn't active // any more (has been replaced). but then check e.g. npc hold and raid petrification. if (Config.EFFECT_CANCELING && !newEffect.getSkill().isStatic() && (stackQueue.size() > 1)) { if (newSkill.isDebuff()) { _debuffs.remove(stackQueue.remove(1)); } else { _buffs.remove(stackQueue.remove(1)); } }
- it just removed from effects list, but effect task still running, and throw a system message to user then task finished (bla bla has worn off). Is a little overload server. Is this right?
Re: Common bug or not (L2Effect)
Posted: Sun Dec 23, 2012 7:47 pm
by MELERIX
if CancelLesserEffect = True
effect with abnormalType will replace other effect with same abnormalType, and the older effect gone.
NOTE: Except in Static Skills.
if CancelLesserEffect = False
effect with abnormalType will replace other effect with same abnormalType, but... the older one continue running behind invisible (with no effect).
so for example if you have 1 effect with 30 seconds and other effect with 15 seconds, and you use the one with 15 seconds over the one with 30 seconds.
the effect with 15 seconds will work, and the other with 30 seconds will continue running behind invisible and with no effect, until the effect with 15 seconds gone, and then the effect with 30 seconds will continue running with the remaining time.
Re: Common bug or not (L2Effect)
Posted: Sun Dec 23, 2012 8:17 pm
by RmzVoid
cancelled effect should be removed forever i think
Re: Common bug or not (L2Effect)
Posted: Sun Dec 23, 2012 8:25 pm
by MELERIX
RmzVoid wrote:cancelled effect should be removed forever i think
that's how is currently working with
CancelLesserEffect = True
so is working fine.