• 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

Fork / Mod Mob Targeted Healing (Nuke-Healing)

TheNomadMan

New member
Joined
Feb 8, 2014
RedCents
451¢
So, there was some mention of adding a |Mob tag to heals. I couldn't wait and had to start playing with this. Requires the two segments below added to Sub SingleHeal. Druids really shine when they pull out the debuffing heal-nukes. I dunno much about shammies; but it does add that lil extra touch to clerics, too, with Virtuous Contravention.

-Uses official heal-loop.
-Activated/Deactivated with DPSOn=
-Responds to /switch
-Checks Line of Sight
-Checks Range
-Targets independent of Sub Combat (before/when stuck in heal-loop), but will follow the combat target once assigned.
-Updates target upon mob death, independent of Sub Combat (before/when stuck in heal-loop)
-Only valid for the MA (|Mob tag = |MA tag, but targets mobs)
-Only active when mobs exist on Xtarget

Rich (BB code):
 | Skip Heal if pet 
            /if (${SHealTag.Equal[pet]}) /goto :SNextHeal
           | If tag MA/Mob and heal target not MA or tag !MA and heal target MA skip
            /if (${DebugHeal} || ${DebugAll}) /echo DEBUGHEALS SingleHeal TAG: ${SHealTag.Equal[MA]} && ${SHealThem}!=${MainAssistID} || ${SHealTag.Equal[!MA]} && ${SHealThem}==${MainAssistID} 
            /if (${SHealTag.Equal[MA]} && ${SHealThem}!=${MainAssistID} || ${SHealTag.Equal[Mob]} && ${SHealThem}!=${MainAssistID} || ${SHealTag.Equal[!MA]} && ${SHealThem}==${MainAssistID}) /goto :SNextHeal
            | Cleric Divine Arbitration and Epics do not work on pets

Rich (BB code):
                } else {
                    /goto :SNextHeal
                }
            }
            | Check For Nuke Heals
            /if (${SHealTag.Find[Mob]}) {
	        /if (!${AggroTargetID}) /goto :SNextHeal
	        /doevents Switch
	        /if (!${MyTargetID} || ${Spawn[${MyTargetID}].Type.Equal[Corpse]}) /call Assist Heals
                /if (${MyTargetID} && ${Spawn[${MainAssist}].PctHPs}<=${SHealPct} && ${Spawn[${MyTargetID}].LineOfSight} && ${Spawn[${MyTargetID}].Distance}<=${SHealRange} && !${Spawn[${MyTargetID}].Type.Equal[Corpse]}) {
                   /call CastWhat "${SHealSpell}" ${Spawn[${MyTargetID}].ID} Heals
                   /if (${Macro.Return.Equal[CAST_SUCCESS]}) {
                   /call BroadCast ${IRCOn} ${EQBCOn} o "${SHealSpell} for ${SHealThem} >> Heal Nuke << aginst ${Spawn[${MyTargetID}].ID} "
		   /varset HealAgain	1
                   /return
                    }
                } else {
                 /goto :SNextHeal
                }
            }
            | Check conditons for heals
            /if (${DebugHeal} || ${DebugAll}) /echo DEBUGHEALS SingleHeal ${SHealHPs}<=${SHealPct} && ${Spawn[${SHealName} ${SHealType}].Distance}<=${SHealRange} && ${Spell${i}GM${WhoNum}}==0
            /if (${SHealHPs}<=${SHealPct} && ${Spawn[${SHealName} ${SHealType}].Distance}<=${SHealRange} && ${Spell${i}GM${WhoNum}}==0) {
                /if (${Select[${MacroQuest.Server},zek]} && ${Select[${Target.Type},PC]} && ${Me.Combat}) {
                    /attack off
                    /delay 25 !${Me.Combat}

- - - Updated - - -

Rich (BB code):
[Heals]
Help=Format Spell|% to heal at i.e. Devout Light Rk. II|50
HealsOn=1
Heals1=Survival of the Fortuitous|45
Heals2=Vivification|45|!MA
Heals3=Convergence of Spirits|45
Heals4=Forceful Rejuvenation|45
Heals5=Stemfang Rush|45|!MA 
Heals6=Vivification|95|MA
Heals7=Remote Sunfire|95|Mob
Heals8=Lustrous Frost|95|Mob
Heals9=Stemfang Rush|95|MA
Heals10=Clutch of Ro|95|Mob
Heals11=Sterivida|95|MA      <---- Never gets here when nuke-healing. Heals 6,7,8,9,10 will chain weave till the mana runs out. 
Heals12=Lunassuage|99
Heals13=NULL
Heals14=NULL
Heals15=NULL

Rich (BB code):
[Heals]
Help=Format Spell|% to heal at i.e. Devout Light Rk. II|50
HealsOn=1
Heals1=Fifteenth Emblem Rk. III|45
Heals2=Burst of Life|45
Heals3=Beacon of Life|45
Heals4=Graceful Remedy Rk. III|45|!MA
Heals5=Forceful Rejuvenation|45
Heals6=Graceful Remedy Rk. III|95|MA
Heals7=Virtuous Intervention Rk. III|95|MA
Heals8=Virtuous Contravention|95|Mob  <--- Replaces the need for Frenzied Renewal in your Graceful chain. Bigger faster heal, more effective chain.
Heals9=Fraught Renewal Rk. II|95|MA
Heals10=Fervent Renewal|95|MA
Heals11=Frenzied Renewal Rk. II|95|MA
Heals12=Word of Reformation|98
Heals13=NULL
Heals14=NULL
Heals15=NULL
 
Last edited:
Wish I had time to play and test this out..., 2 weeks still and am fully back.
 
Excuse my ignorance but is there any way you could ELI5 on the exact folder these changes need to be made in? I am unable to locate what you have posted below so that you can use the |Mob command. Thanks!!

So, there was some mention of adding a |Mob tag to heals. I couldn't wait and had to start playing with this. Requires the two segments below added to Sub SingleHeal. Druids really shine when they pull out the debuffing heal-nukes. I dunno much about shammies; but it does add that lil extra touch to clerics, too, with Virtuous Contravention.

-Uses official heal-loop.
-Activated/Deactivated with DPSOn=
-Responds to /switch
-Checks Line of Sight
-Checks Range
-Targets independent of Sub Combat (before/when stuck in heal-loop), but will follow the combat target once assigned.
-Updates target upon mob death, independent of Sub Combat (before/when stuck in heal-loop)
-Only valid for the MA (|Mob tag = |MA tag, but targets mobs)
-Only active when mobs exist on Xtarget

Rich (BB code):
 | Skip Heal if pet 
            /if (${SHealTag.Equal[pet]}) /goto :SNextHeal
           | If tag MA/Mob and heal target not MA or tag !MA and heal target MA skip
            /if (${DebugHeal} || ${DebugAll}) /echo DEBUGHEALS SingleHeal TAG: ${SHealTag.Equal[MA]} && ${SHealThem}!=${MainAssistID} || ${SHealTag.Equal[!MA]} && ${SHealThem}==${MainAssistID} 
            /if (${SHealTag.Equal[MA]} && ${SHealThem}!=${MainAssistID} || ${SHealTag.Equal[Mob]} && ${SHealThem}!=${MainAssistID} || ${SHealTag.Equal[!MA]} && ${SHealThem}==${MainAssistID}) /goto :SNextHeal
            | Cleric Divine Arbitration and Epics do not work on pets

Rich (BB code):
                } else {
                    /goto :SNextHeal
                }
            }
            | Check For Nuke Heals
            /if (${SHealTag.Find[Mob]}) {
	        /if (!${AggroTargetID}) /goto :SNextHeal
	        /doevents Switch
	        /if (!${MyTargetID} || ${Spawn[${MyTargetID}].Type.Equal[Corpse]}) /call Assist Heals
                /if (${MyTargetID} && ${Spawn[${MainAssist}].PctHPs}<=${SHealPct} && ${Spawn[${MyTargetID}].LineOfSight} && ${Spawn[${MyTargetID}].Distance}<=${SHealRange} && !${Spawn[${MyTargetID}].Type.Equal[Corpse]}) {
                   /call CastWhat "${SHealSpell}" ${Spawn[${MyTargetID}].ID} Heals
                   /if (${Macro.Return.Equal[CAST_SUCCESS]}) {
                   /call BroadCast ${IRCOn} ${EQBCOn} o "${SHealSpell} for ${SHealThem} >> Heal Nuke << aginst ${Spawn[${MyTargetID}].ID} "
		   /varset HealAgain	1
                   /return
                    }
                } else {
                 /goto :SNextHeal
                }
            }
            | Check conditons for heals
            /if (${DebugHeal} || ${DebugAll}) /echo DEBUGHEALS SingleHeal ${SHealHPs}<=${SHealPct} && ${Spawn[${SHealName} ${SHealType}].Distance}<=${SHealRange} && ${Spell${i}GM${WhoNum}}==0
            /if (${SHealHPs}<=${SHealPct} && ${Spawn[${SHealName} ${SHealType}].Distance}<=${SHealRange} && ${Spell${i}GM${WhoNum}}==0) {
                /if (${Select[${MacroQuest.Server},zek]} && ${Select[${Target.Type},PC]} && ${Me.Combat}) {
                    /attack off
                    /delay 25 !${Me.Combat}
 
Last edited by a moderator:
the changes are in the kissassist.mac file in your macro folder in your root macroquest2 folder.
you need to open the mac file in a text editor like notepad.
Find the sections mentioned and make the changes.
 
Speaking of opening it in Notepad, when I do that I just get a wall of text that's basically impossible to work with. Is there a good free editor that would organize it so it's legible?
 
Notepad++ is a great editor for macros and .ini files.
 
I always convert all the .mac files to a text(.txt) file. Just open the file you want to edit using Wordpad and then do a SaveAs and choose .txt. That way you can use Notepad to edit the files. I like using notepad better than I like using wordpad.
 
Does the Nuke/Heal logic use the MA health when it cast those line of spells?
 
So far this is working well. We are killing MUCH faster using Nuke heals. I did add Sunbeam blessing into the mix though. It pops a twincast on the next two heals.
 
Fork / Mod Mob Targeted Healing (Nuke-Healing)

Users who are viewing this thread

Back
Top
Cart