• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Request - 2 requests - Debuffall|Snare and HoT

nyghteyes

What is a macro??
Joined
Mar 21, 2006
RedCents
1,347¢
Maskoi, can we get a snare debuffall tag?

I've tried all the current tags for the debuffall routine (which are amazing for the ones they are written for) but none work for snare so I'm back to the |Once

Also is there a way to get the heal routine understand Heal over Time? Since you cant see anothers song window, maybe a timer?
 
This is a great idea. One more thing I can pull out of shits and back into Kiss.

Here is a Ranger snare holyshit if you want it in the mean time:
Rich (BB code):
holyshit0=/if (${Me.AltAbilityReady[Entrap]} && !${Target.Snared.ID(bool)} && ${Target.Type.Equal[NPC]}) /alt act 219

Just replace entrap with encroaching darkness and change the aa code. I use this on my Ranger and SK with great effect, it just doesnt handle immunes, so KA would be nice to catch that and not recast.
 
Yep immunes and resists is why I don't holy that. I'm hoping for it to be coded with logic like the rest of the debuff routines.

Thanks for sharing
 
I will look and see what it will take to make the addition for the snare. I will have to look at the casting code for the immune checks. I know I can check for the resists, but not sure about the immunes.

OK. Looks like I can test for immune. What behavior would you want if resisted?
 
I will look and see what it will take to make the addition for the snare. I will have to look at the casting code for the immune checks. I know I can check for the resists, but not sure about the immunes.

OK. Looks like I can test for immune. What behavior would you want if resisted?


recast till sticks or mob dies...my 2cents.

|# of times to try if resiststed

with an "always" switch? If not immune of course
 
|# of times to try if resiststed

with an "always" switch? If not immune of course

I will look and see what I can do, but just a note. The always switch is used to force your character to cast the debuff even if the mob has the debuff. That way you can force one character to cast the debuff after a different character. Like having your shaman cast slow even though the enchanter in the group slowed the mob.

As always. Please make backups of your current macro before try to add these changes. This code has not been tested.

Find the DebuffCast sub routine.

Find this code and Add only the highlighted sections:

Rich (BB code):
          /if (${Tag1.Equal[crip]} && ${Target.Crippled.ID} && ${Tag2.NotEqual[always]}) {
             /if (!${DBOList${i}.Find[|${DebuffTargetID}]}) /varset DBOList${i} ${DBOList${i}}|${DebuffTargetID}
             /varset TempTimer ${Target.BuffDuration[${Target.Crippled.Name}].TotalSeconds}*10
             /goto :SkipCast
          }
          /if (${Tag1.Equal[snare]} && ${Target.Snared.ID} && ${Tag2.NotEqual[always]}) {
             /if (!${DBOList${i}.Find[|${DebuffTargetID}]}) /varset DBOList${i} ${DBOList${i}}|${DebuffTargetID}
             /varset TempTimer ${Target.BuffDuration[${Target.Snared.Name}].TotalSeconds}*10
             /goto :SkipCast
          }
          /if (${DebugCombat}) /echo \atDEBUGCOMBAT DebuffCast: DebuffTargetID: ${DebuffTargetID} Slowed: ${Target.Slowed.ID} Tashed: ${Target.Tashed.ID} Maloed: ${Target.Malod.ID} Crippled:${Target.Crippled.ID} Tag1: ${Tag1} Tag2: ${Tag2}  \agLine#: ${Macro.CurLine}
       } 
       /if (${HealsOn}) /call CheckHealth
       | Wait here for a sec, your spell bar may still be in global cool down.
       /if (${Me.SpellInCooldown}) {
          /delay 5
       }                
       /call CastWhat "${DebuffText}" ${DebuffTargetID} DebuffCast
       /if (${DebugCombat}) /echo \atDEBUGCOMBAT DebuffCast: Return From CastWhat: ${Macro.Return} \agLine#: ${Macro.CurLine}
       /if (${Macro.Return.Equal[CAST_RESIST]}) {
           /echo ** ${DebuffText} on >> ${Spawn[${DebuffTargetID}].CleanName} << - RESISTED
           /goto :SkipCast
       }
       /if (${Macro.Return.Equal[CAST_TAKEHOLD]}) {
          /echo ** ${DebuffText} on >> ${Spawn[${DebuffTargetID}].CleanName} << - DID NOT TAKE HOLD
          /varset TempTimer 3m
          /goto :SkipCast
       }
       /if (${Macro.Return.Equal[CAST_IMMUNE]}) {
          /echo ** ${Spawn[${DebuffTargetID}].CleanName} is IMMUNE to - ${DebuffText}
          /if (!${DBOList${i}.Find[|${DebuffTargetID}]}) /varset DBOList${i} ${DBOList${i}}|${DebuffTargetID}
          /varset TempTimer 3m
          /goto :SkipCast
       }
       /if (${Macro.Return.Equal[CAST_SUCCESS]}) {
          /echo ** Debuffing: ==> ${DebuffText} on >> ${Spawn[${DebuffTargetID}].CleanName} << DebuffTargetID: ${DebuffTargetID} Target: ${Target.ID} DBOList: ${DBOList${i}}
          /if (!${DBOList${i}.Find[|${DebuffTargetID}]}) /varset DBOList${i} ${DBOList${i}}|${DebuffTargetID}
          | Timers for items

Now what this will do is add any mob that is immune to snare to the snared mob list and set the timer to 3 minutes. So in worst case it will cast snare again on the immune mob after 3 minutes, if the mob is still alive. It will continue to cast snare if mobs resists until snare lands, but not continuously. Lets just test it like it is and if you see a retry # has to be added, then we can revisit this at a later time.

format is same as slow/tash/malo/crip just use snare

DPS1=Snare Spell|99|debuffall|snare
 
Last edited:
Awesome, will give it a spin. I also guess I was using always wrong but still right enough to have it work in my situation heh.

-update-
Seems to be working great so far.

Thanks much CT
 
Got to spend more time with this, it does not recognize immunes.

Usage:
Rich (BB code):
DPS1=Ensnare|90|debuffall|snare
 
Do you ever see it /echo the ** ${Spawn[${DebuffTargetID}].CleanName} is IMMUNE to - ${DebuffText}. I need to know if the castwhat routine is returning the correct flag. Does it show any message at all when debuffing the immune mob?
 
Rich (BB code):
[2016/10/21 20:07:18] [MQ2] DEBUG CastWhat: Enter castWhat - Ensnare CastonName: a coldspine seahorse castTargetID - 20282 From: DebuffCast Line#: 1843
[2016/10/21 20:07:18] [MQ2] DEBUG CastWhat: SpellCheck HaveSpell:21 HaveMana:35<=1155 Line#: 1951
[2016/10/21 20:07:26] [MQ2] DEBUG CastWhat cast Spell result: CAST_RESIST Line#: 1984
[2016/10/21 20:07:26] [MQ2] DEBUG CastWhat Leave CAST_RESIST Line#: 2004
[2016/10/21 20:07:26] [MQ2] DEBUGCOMBAT DebuffCast: Return From CastWhat: CAST_RESIST Line#: 4413
[2016/10/21 20:07:26] [MQ2] ** Ensnare on >> a coldspine seahorse << - RESISTED
[2016/10/21 20:07:26] [MQ2] DEBUGCOMBAT DebuffCast 2 DebuffTargetID: 20282 1 Find: NULL Timer: 0 List:  Line#: 4469

That was snare immune
 
Last edited:
Rich (BB code):
[2016/10/21 20:07:18] [MQ2] DEBUG CastWhat: Enter castWhat - Ensnare CastonName: a coldspine seahorse castTargetID - 20282 From: DebuffCast Line#: 1843
[2016/10/21 20:07:18] [MQ2] DEBUG CastWhat: SpellCheck HaveSpell:21 HaveMana:35<=1155 Line#: 1951
[2016/10/21 20:07:26] [MQ2] DEBUG CastWhat cast Spell result: CAST_RESIST Line#: 1984
[2016/10/21 20:07:26] [MQ2] DEBUG CastWhat Leave CAST_RESIST Line#: 2004
[2016/10/21 20:07:26] [MQ2] DEBUGCOMBAT DebuffCast: Return From CastWhat: CAST_RESIST Line#: 4413
[2016/10/21 20:07:26] [MQ2] ** Ensnare on >> a coldspine seahorse << - RESISTED
[2016/10/21 20:07:26] [MQ2] DEBUGCOMBAT DebuffCast 2 DebuffTargetID: 20282 1 Find: NULL Timer: 0 List:  Line#: 4469

That was snare immune

Hmm. I will have to look at the mq2cast_spell_routines.inc code. It should be returning CAST_IMMUNE and not CAST_RESIST

What is the immune message you are getting from EQ?

Looks like it is an MQ2Cast plugin issue.
 
Just the
Rich (BB code):
Your target is immune to snare spells.
Your target resisted the Ensnare spell.

I have been looking at the MQ2Cast code and have found an issue with it only returning the "Your target resisted the Ensnare spell." and skipping over the "Your target is immune to snare spells." So naturally MQ2cast is returning Cast_Resist and not Cast_Immune. Getting late so will have to look at this some later on today.

- - - Updated - - -

OK Give this a try. I got it so it returns the CAST_IMMUNE like it should. Let me know how it works for you.
 

Attachments

Every thing works as intended now with the new MQ2Cast and the snare code in the modified Kiss you posted above.

Kickass work CTayor22!

afterthought
What about this being added to KissAssist_Info like Mez immune?
 
Every thing works as intended now with the new MQ2Cast and the snare code in the modified Kiss you posted above.

Kickass work CTayor22!

afterthought
What about this being added to KissAssist_Info like Mez immune?

Maskoi is the expert when it comes to the mez code.
 
Request - 2 requests - Debuffall|Snare and HoT

Users who are viewing this thread

Back
Top
Cart