• 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

Cross Client Conditional Buffs

richie2684

New member
Joined
Dec 6, 2013
RedCents
224¢
I recently found while 6 boxing that I wanted certain buffs to be cast by one character on another, depending on some sort of condition unrelated to the character casting the buff. For example, being able to check my Paladin's mana and if necessary, have my Cleric cast Quiet Miracle on him. Another example is wanting to cast a Cleric buff, Galvos' Retort, in combat only and only if my Paladin did not already have the buff. I tried to think of a way to do this with either KissAssist or Holyshits/Downshits alone but came up with nothing. I thought I would share my solution in case any others find it helpful.

I am not a coder. I realize there may be much easier ways of accomplishing my objective but I hope this helps a few people.

Plugins Needed

MQ2EQBCS

General Concept

The general idea is to use Holyshits (downshits can be used as well) to force my tank to check for a certain condition(s) and then request certain buffs via MQ2EQBCS from my other box characters.

In most circumstances KissAssist alone will perform this function better than my method can - this is only useful for some edge case scenarios.

Step 1 - Set Up MQ2EQBCS

Please refer to this guide for instructions on how to set up MQ2EQBCS

Step 2 - Set Up In Game Macro(s)

I couldn't find a way to target a specific character using MQ2Cast. You can assign a target via a target ID but these are dynamic and change upon zoning so this was not very helpful. Instead I chose to create a simple in game macro that targets my tank and then casts a spell from a spell gem. This is a simple one I used to cast Galvos' Retort.

Example:

Rich (BB code):
/target MYTANKNAMEHERE
/cast 11

You will need to put the spell you want to use into the gem slot you have allocated in the macro, in my case gem 11. We can also do this using an AA, which I did do when setting up my Cleric to cast Quiet Miracle on my tank. For example:

Rich (BB code):
/target MYTANKNAMEHERE
/alt act 135

Once you have created the macro, put it onto your hotbar. Make note of the keybind for the hotkey you have placed the macro on.

Step 3 - Create a Holyshit/Downshit to Make the Box Character use the Macro you Created

The final step is to create a Holyshit or a Downshit on the character receiving the buff that checks for the conditions you want to set and then, when those conditions are met, casts the buff by keypressing the hotkey you set up in Step 2. Generally speaking, you will want to use a Holyshit here if the character receiving the buff is typically meleeing, and if not, use a downshit instead.

Here are a few examples of holyshits I have created on my Paladin to get Galvos' Retort and Quiet Miracle from my Cleric.

Galvos' Retort

Rich (BB code):
holyshit7=/if (!${Me.Buff[Galvos' Retort].ID} && ${Me.PctHPs}>85) /bct YOURCLERICNAMEHERE //keypress 8

This holyshit simply checks if my tank does not have the buff Galvos' Retort and if my hitpoints are higher than 85%. If both those conditions are met, the holyshit will send a command via MQ2EQBCS to my cleric telling him to keypress the macro we created. There are 2 reasons I chose to set it up this way rather than simply keeping the buff maintained permanently in KissAssist. First, the buff is of a very short duration and I only wanted to have it when needed. Second, the buff also places a reverse damage shield on the buff target's target, meaning that you get slightly more out of it by casting it in combat.

Quiet Miracle

Rich (BB code):
holyshit7=/if (${Me.PctMana}<60) /bct YOURCLERICNAMEHERE //keypress 7

Similar to the last macro, this holyshit checks whether my mana is less than 60% and if it is, sends a MQ2EQBCS command to my cleric telling him to use the macro which will cast Quiet Miracle on my tank. The reason why I chose to set this up in this way is that (to my knowledge) KissAssist cannot check other characters' mana levels and cast Quiet Miracle on them accordingly.

Conclusion

There may be more efficient ways to do what I have done and I welcome any input. KissAssist will perform these kinds of functions better than my method 99% of the time - I hope this helps a few people in those niche cases similar to the ones I have given examples of.
 
I'm not in game to test this, but building on your idea, you could try something like this.

To target using MQ2Cast, you can add the -targetid tag. For example:
Rich (BB code):
/casting "Galvos' Retort" -targetid|${Group.MainTank.Spawn.ID}
This assumes the paladin has the Main Tank role assigned.

You could also search by name:
Rich (BB code):
/casting "Galvos' Retort" -targetid|${Spawn[PaladinName].ID}

Incorporating this into your holyshit would look like:
Rich (BB code):
holyshit7=/if (!${Me.Buff[Galvos' Retort].ID} && ${Me.PctHPs}>85) /bct YOURCLERICNAMEHERE //casting "Galvos' Retort" -targetid|${Me.ID}

Because you want it cast on yourself, you obviously don't need to search for the group member or spawn id, because it's you, just pass your id. I wasn't clear on what you meant about the id with zoning changing it, is this something you tried already?

Awesome idea with the /bct to get around having to have your cleric target you to check somehow.
 
I didn't know you could to these sort of things with the -targetid tag. This definitely simplifies things as you can eliminate the need to create in game macros for targeting like I was doing.

Already made more efficient. Thanks for the input!
 
Kiss won't use quiet miracle but it will definitely and the Retort line. Kiss keeps track of all combat buff timers so it knows the tank is currently buffed. Example below from my cleric.

Rich (BB code):
[DPS]
DPSOn=1
DPSSkip=5
DPSInterval=10
DPS1=Mark of Tohan|0
DPS2=Ardent Hammer of Zeal|97
DPS3=Olsif's Retort|90|MA
DPS4=Shining Bulwark|95|MA
 
Oh thank you. I didn't realize you could use the MA tag in the DPS section of Kiss. If I can ask you, how does Kiss determine when to DPS instead of casting a Heal? Does it check whether any of the percentage requirements in my heal list are met, and if not, then go to the DPS section?

Glad it's still useful for Quiet Miracle at least :)
 
Cross Client Conditional Buffs

Users who are viewing this thread

Back
Top
Cart