• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->

Guild Hall on demand Buff Bot (1 Viewer)

grassdunes

New member
Joined
Jan 15, 2006
RedCents
Hi everyone, I am new here. Forgive me if this is already out there.


I was wondering if anyone had writen a macro that would allow a cleric, shaman, enchanter, or any class that can buff to group people and buff them upon receiving a tell with a specific keyword. This would be very useful for most guilds. Buffing classes could park their toons in the hot tub, group people and buff them at any time.

I would do it myself, but Im still learning and have a long way to go.

Any input or help is much apreciated.
 
This would be somewhat easy to write, however, it will look a bit obvious for a toon to be always online and buffing upon recieving a tell, instantly.

Anyway, here's a very simple version I put together, with a chanter as an example:

Rich (BB code):
#Chat   tell
#Event  TellMsg "#1# tells you, '#2#'"

Sub Main
    :Loop
        /doevents chat
    /goto :Loop
/return

Sub Event_Chat(string Chat, string Toon, string Msg)
    /if (${Msg.Find[haste]}) {
        /target pc ${Toon}
        /cast "Speed of Salik"
        /delay ${Math.Calc[(${Spell[Speed of Salik].MyCastTime}*10)].Int} (!${Me.Casting.ID})
    } else /if (${Msg.Find[c6]}) {
        /target pc ${Toon}
        /cast "Clairvoyance"
        /delay ${Math.Calc[(${Spell[Clairvoyance].MyCastTime}*10)].Int} (!${Me.Casting.ID})
    } else /if (${Msg.Find[c5} || ${Msg.Find[voq}) {
        /target pc ${Toon}
        /cast "Voice of Quellius"
        /delay ${Math.Calc[(${Spell[Voice of Quellius].MyCastTime}*10)].Int} (!${Me.Casting.ID})
    } else /if (${Msg.Find[c4]} || ${Msg.Find[tranq]}) {
        /target pc ${Toon}
        /cast "Tranquility"
        /delay ${Math.Calc[(${Spell[Tranquility].MyCastTime}*10)].Int} (!${Me.Casting.ID})
    } else /if (${Msg.Find[c3]} || ${Msg.Find[kei]}) {
        /target pc ${Toon}
        /cast "Koadic's Endless Intellect"
        /delay ${Math.Calc[(${Spell[Koadic's Endless Intellect].MyCastTime}*10)].Int} (!${Me.Casting.ID})
    } else /if (${Msg.Find[god]} || ${Msg.Find[mr]} || ${Msg.Find[druzzil]}) {
        /target pc ${Toon}
        /cast "Guard of Druzzil"
        /delay ${Math.Calc[(${Spell[Guard of Druzzil].MyCastTime}*10)].Int} (!${Me.Casting.ID})
    }
/return
 
Thanks EvenLess,

I tried this last night and it did not work for me. Am I missing something? I tried quite a few changes, but nothing would do. Here is the code I tried on my beast lord. Do the spells have to be loaded in specific gems, or will any do?

When my friend sent me a tell with the key words you see below, it did nothing. Script looks good to me, so I have no clue what is not working.



#Chat tell
#Event TellMsg "#1# tells you, '#2#'"

Sub Main
:Loop
/doevents chat
/goto :Loop
/return

Sub Event_Chat(string Chat, string Toon, string Msg)
/if (${Msg.Find[crack]}) {
/target pc ${Toon}
/cast "Spiritual Purity"
/delay ${Math.Calc[(${Spell[Spiritual Purity].MyCastTime}*10)].Int} (!${Me.Casting.ID})
} else /if (${Msg.Find[dex]} || ${Msg.Find[dexterity]}) {
/target pc ${Toon}
/cast "Dexterity"
/delay ${Math.Calc[(${Spell[Dexterity].MyCastTime}*10)].Int} (!${Me.Casting.ID})
}
/return
 
Hmm.. Try looking through your logs, see if the number of spaces etc. matches my events.. Have seen a few times before that it's 2 spaces between "tells you," and "'message", where as it looks like only 1 space.

It might be something as simple as that..

HAven't tested the macro, just wrote it on the fly :(
 
Guild Hall on demand Buff Bot

Users who are viewing this thread

Back
Top