Spells with Counters (Disease/Poison/Curse)

Discussion in 'General Discussion' started by solar, Nov 20, 2023.

  1. Elroz

    Elroz I Feel Loved Staff Member

    Messages:
    2,283
    Looking at the spells breakdown in solar's list, this is the curse afflictions that will be affected :

    Curse Affliction Spells:

    Affliction 1042 Storm Comet can't be cured by the following:
    3681 Aria of Innocence

    Affliction 2913 Balance of Zebuxoruk can't be cured by the following:
    3297 Radiant Cure1
    3298 Radiant Cure2
    3299 Radiant Cure3
    3681 Aria of Innocence

    Affliction 3060 Mists of Enlightenment can't be cured by the following:
    3297 Radiant Cure1
    3298 Radiant Cure2
    3299 Radiant Cure3

    Affliction 3937 Dark Corona can't be cured by the following:
    2946 Remove Curse
    3681 Aria of Innocence
     
  2. Walex

    Walex I Feel Loved

    Messages:
    665
    Epoch Conviction:
    1 Decrease Spell Haste by 20%
    2 Decrease Attack Speed by 20%
    3 Increase Curse Counter by 36
    4 Decrease Hitpoints by 100 per tick
    5 Decrease Mana by 100 per tick

    Remove Greater Curse:
    1 Decrease Curse Counter by 9
    2 Decrease Curse Counter by 9
    3 Decrease Curse Counter by 9
    4 Decrease Curse Counter by 9
    5 Decrease Curse Counter by 9

    Slots 1, 2, 4, 5 would all apply. Because:
    -20 - 9 < 6
    -100 - 9 < 6

    Slot 3 would not apply because:
    36 - 9 > 6

    So RGC would cure exactly 36 of the necessary counters to remove Epoch Conviction
     
  3. Break

    Break People Like Me

    Messages:
    616
    From his example, I'd still expect it to be removed in one cast. Epoch has slots 1, 2, 4 & 5 with 0 counters. The same slots in RGC would remove 9 each for a total of 36 removed. Slot 2 would fail, but it wouldn't matter.
     
  4. JemiS

    JemiS Active Member

    Messages:
    33
    Ok, I think I get it: it doesn't have to remove all 36 counters from matches in that slot, just has to remove 36 counters in total by comparisons across slots?
     
  5. Palarran

    Palarran Well-Known Member

    Messages:
    154
    It looks like the main impact will be some/all pet heals not being able to cure some/all slows? Most of the other affected "use X to cure Y" combinations seem to be rarely used in practice.
     
  6. solar

    solar Administrator Staff Member

    Messages:
    1,197
    I don't consider issues like this to be controversial, I was posting the explanation to share my findings with other interested nerds, but I recognize that my opinion of it isn't shared by all. I just look at how the code works and what it expects and I am trying to avoid arguing issues where it's some nerf/buff type discussion - these are just minor details that weren't implemented before, but we're figuring it out now. I have packet logs from different versions of the game, not much from AK, but I do my best to reconcile things. If I don't have high confidence about something, I shelve it for later. I'm working in a lifetap spell thing that I shelved back in 2018 when I didn't understand the whole thing. I will likely save that for another patch cycle because I am still researching. I am confident this is how the game works with regard to counters - the client that we all have hasn't changed. Whether people like it or not, or knew it or not, is a different issue and I don't want to argue about that.

    I made that list of spells as part of my research to try to understand the difference. The short of it is that most things still work the same, but a few cure/affliction spells are incompatible. You guys can just try them out for yourself in the game after the patch, but if you understand what I wrote then you can refer to the list and answer the question yourself. I only compared counters so when my file says it can't be cured, it means the counters can't be reduced, but some of the cure spells like Radiant Cure have other effects in them too. For curse spells, Remove Curse continues to work on all of them except Dark Corona which can still be cured with enough casts of RGC. I don't even know if anything uses that spell. Please read what I wrote and compare the spell effect slots yourself if you want to check a specific pair of spells. It really isn't a big deal, but more of a nerdy detail. It hasn't worked this way in 20 years on live EQ so it's likely nobody knew/remembers this, but apparently sometimes cures didn't work, and you had to heal through stuff, avoid it by moving away, use a different cure spell, something.
     
    Manstache likes this.
  7. solar

    solar Administrator Staff Member

    Messages:
    1,197
    I tested this and it takes 9 casts of Remove Curse or 2 casts of Remove Greater Curse. These Quarm things are not a good example though because this is one of the things where it's intentionally hacked to be custom.
    The slot 2 effect is not actually negative due to how haste values are expressed in the spell data.
     
  8. Mokli

    Mokli I Feel Loved

    Messages:
    2,460
    Was the original intention to have it cured in one cast of RGC? Does Quarm need to be retuned now?
     
  9. Kovah

    Kovah Active Member

    Messages:
    100
    going from needing 1 RGC cast to remove Epoch (how it was previously) to needing 2 casts of RGC to remove Epoch is actually a pretty big impact.
     
    Last edited: Nov 21, 2023
    showstring likes this.
  10. Walex

    Walex I Feel Loved

    Messages:
    665
    Oof
     
  11. solar

    solar Administrator Staff Member

    Messages:
    1,197
    Didn't you guys kill CoD Bertox when the AE was doing like 1100 damage per tick? I wish I could retroactively fix these before people got to Quarm but I can't go back in time!
     
  12. Mokli

    Mokli I Feel Loved

    Messages:
    2,460
    That was Temerity. We never got the chance in NAG, but were looking forward to it. Had a strat ready and all.
     
  13. Walex

    Walex I Feel Loved

    Messages:
    665
    There's still time to put bert 1.0 in before the anniversary event
     
  14. showstring

    showstring I Feel Loved

    Messages:
    3,339
    wow.... what the actual f
     
  15. Ravenwing

    Ravenwing I Feel Loved

    Messages:
    3,170
    Thanks for the log at post #16, Solar. It does surprise me that pet heals wouldn't clear slow from player pets, since that seems like the clear intent behind the design, but I suppose one could say the same thing about the damage shield component of Divine Barrier.

    I looked through the Tem forums, thinking that we'd surely used Kithar's potions on Bert's AE on AK, and we did talk about it, but someone posted this irritatingly enigmatic comment after our first attempt:

    Which could indeed mean that the potions didn't work.
     
    solar likes this.
  16. Inacht

    Inacht People Like Me

    Messages:
    557
    Since Quarm is custom content here, please consider not making epoch conviction require 2x RGC. Requiring 2x RGC would greatly extend the duration of the effect on groups, sucking up much more time and draining more mana. It would also hurt SoTW a lot.

    I know I'm in the minority when it comes to preferring quality of life over strict accuracy, but Quarm is already custom. Increasing the cure burden on a super debuff heavy fight is a big, big change IMO.
     
    RossGuy, OuterChimp, Break and 2 others like this.
  17. Walex

    Walex I Feel Loved

    Messages:
    665
    I'd love to hear what pet classes from AK have to say about this. "Pet heals don't cure slow" seems like the kind of thing that would have been very well-known since it's kind of a death sentence for your pet. One of our mages just made the comment in Discord "if my pet gets hit with slow I guess it's better to just kill him and summon a new one" and I think that's a sensible conclusion. There would have been some kind of similar tribal wisdom on AK if this were the case.

    In cases like this, I think it would be smart to lean more on the tribal wisdom than what's found in the client since this is coming as a shock to so many people. Posting a single excerpt from a beastlord cure failing to work isn't sufficient evidence for such a sweeping change imo. That could have been caused by a different effect blocking the slow, or the slow being reapplied during gaps in the logs, or some other inconsistency between server/client code, for example. There should be hundreds / thousands of instances of this happening in logs. Maybe there are and they haven't been shown, but that would be very helpful to set minds at ease. But I don't think enough proof has been shown.

    It's obvious that there were already differences between the client and server based on Darchon's anecdote about Babnoxis' AE so I don't think it's unreasonable to posit that these changes existed in the client in our era but were patched out of the server code, or that this state of code was very much "unintended" since it was fixed on live shortly after our timeline.

    This strikes me as the kind of thing where it just makes so much more sense to leave it as-is versus recreating a bug for no real benefit. I don't mean to appear whiny, I just don't see the point of putting this in. After all, I did just advocate for Quarm's spell haste fix to be reverted, and it was without much hesitation (thank you for that!).

    For the record, it's frustrating to be on the other side of these discussions, having no access to logs. We're very much at the mercy of whatever the devs come up with and no amount of anecdotes will appear sufficient evidence to 1 or 2 log excerpts which aren't as credible as they tend to appear.
     
    RossGuy, OuterChimp, Mukk and 2 others like this.
  18. Delorne

    Delorne People Like Me

    Messages:
    228
    I think I asked my question poorly. In light of what you've seen with curse/disease/poison counters, is there more insight into how Magic counters work? Like, an NPC can dispel me with Annul Magic or whatever and it takes off random ass buffs in the middle (consistent across my experience on Live, AK, and TAKP), but Frost Breath I remember consistently only affecting top slot buffs when I soloed Terror on AK. So is there different logic with Cancel Magic counters?
     
    Cadsuane likes this.
  19. Kithani

    Kithani Well-Known Member

    Messages:
    70
    Errybody wanna love big Solar when he puts Halflings and Ogres on a diet

    Don’t nobody wanna give big Solar some love when he fixes the cure counters
     
  20. Cadsuane

    Cadsuane People Like Me

    Messages:
    818
    We weren't exactly all taking AE damage (let alone the mana drain) on that for our successful attempt before it was fixed - I'm not even sure if our current time geared full raid force would be able to stand *in* the AE and take him down.

    We had to use more creative strategies that reminded me more of old style world of Warcraft than old style EQ.
     
  21. solar

    solar Administrator Staff Member

    Messages:
    1,197
    I'll make it so RGC cures Epoch Conviction in one cast.
     
    hemper, Break, Frosst and 4 others like this.
  22. showstring

    showstring I Feel Loved

    Messages:
    3,339
    Last edited: Nov 22, 2023
  23. Pithy

    Pithy I Feel Loved

    Messages:
    2,630
    This does seem like the kind of thing that would've shown up on message boards.

    Anyhoo, thanks for your hard work, Solar. It really is interesting to see what's inside the client, and I do think it's one of the most reliable sources we have. I just think more impactful changes should carry higher burdens of proof, which in my mind means corroborating big changes with other sources. Though tbh I'm not sure how impactful this counter stuff would actually be in practice.
     
    Walex likes this.
  24. Break

    Break People Like Me

    Messages:
    616
    Sadly, I don't remember knowing that a mage pet heal even had disease cure attached. I had a shaman + a mage, so I always had a char that could cure disease and spot heal in a pinch.

    I do have very clear memories of using reclaim energy on swarm pets, however. I'd love for the logic behind that spell to be assessed in the decompiles.
     
  25. Elroz

    Elroz I Feel Loved Staff Member

    Messages:
    2,283
    Looking at logs I see this :
    [Sun Aug 18 13:43:36 2013] You begin casting Remove Greater Curse.
    [Sun Aug 18 13:43:42 2013] Your Boots of Vengeful Fury flickers with a pale light.
    [Sun Aug 18 13:43:45 2013] You haven't recovered yet...
    [Sun Aug 18 13:43:45 2013] You haven't recovered yet...
    [Sun Aug 18 13:43:45 2013] You begin casting Remove Greater Curse.
    [Sun Aug 18 13:43:45 2013] You haven't recovered yet...
    [Sun Aug 18 13:43:51 2013] Your target has been cured.

    (from the tank perspective)
    [Sun Aug 18 13:43:51 2013] You are no longer hindered by the gravel.
     
    Gamer1047 and showstring like this.
  26. Gamer1047

    Gamer1047 Member

    Messages:
    10
    Maybe I'm misunderstanding but Slot 4, 72 curse counters. And removed in two casts of RGC, which should only remove 27 by this logic (1,2,3,4,5 9 counters each)?
     
  27. Manstache

    Manstache Active Member

    Messages:
    210
    Correct errors and knowns/unknowns.

    +1 support
     
  28. Nakunaru

    Nakunaru People Like Me

    Messages:
    172
    Aww was hoping my dedicated curers got more to cater for me.

    Gotta say, applause to the devs again digging into this shit show of a code. Always fun to read, and comparing to my memory of what I remember playing.
     
  29. solar

    solar Administrator Staff Member

    Messages:
    1,197
    I looked into this and I think the way we have it working on TAKP is already precise or really close.

    The value in the Cancel Magic spell is a level modifier, so for example #48 Cancel Magic has slot 1 with effect value 1. This is just added to the caster's level.
    The chancel to dispel is (dispel_caster_level - buff_caster_level) * 5. In an old (not eqmac) client I found a +10 modifier here, we don't have that in our code currently (edit: we actually do).
    The chance is clamped between 5 and 95 and rolled against 100. For each Cancel Magic effect in a spell, the 15 buffs are iterated and rolled for. If the roll fails, it continues to the next buff. If it succeeds it removes that buff and finishes processing that effect, or in the case of Taper Enchantment (0 value for level modifier) it cuts the remaining duration in half.

    So the reason it appears that there are two types of dispels - random and 'top slot' - is due to the randomness, and attempting to roll each slot in turn on failure. The NPCs that cast Frost Breath are high level and have advantage over the player - even without the +10 modifier, being 10 levels higher gives maximum chance, so most of the time the top slot will get dispelled. A low level NPC casting a weak dispel like Cancel Magic has a much higher chance to fail on the first slot and continue to the next slot. It is essentially a random dispel but with a higher chance to dispel the first few slots than the later slots. Still it's never 100% so Dozekar and Terror can end up dispelling the last slot too.

    Edit: I checked and actually we added the modifier years ago.
     
    Last edited: Nov 24, 2023
  30. Delorne

    Delorne People Like Me

    Messages:
    228
    Very cool. Thanks for looking into that solar.