• 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 --->
  • EverQuest's 31st expansion The Outer Brood goes live Dec 3rd. brainiac has been spending extra time updating MacroQuest. Please show him your appreciation.
    Don't forget to update your mq2nav meshes by running the meshupdater or by visiting MQ Mesh
Resource icon

Utility simple universal buff assistant

Server Type
🏘️ Emu
was making a buff subroutine for a macro i'm working on and realized with very little extra work it would make a decent buff assistant so i figured id do the little extra and post it for anyone who wants it.
i have tested it on a cleric and chanter by asking for any buff by name you will get it if the character has it and if they have the rank 2 or 3 versions you will get that with out having to specify



Rich (BB code):
|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM|
|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM|
|MM                                                                 MM|
|MM                     MICAHSBUFFASSISTANT.MAC                     MM|
|MM                                                                 MM|
|MM                 This Marco Was Made By Micah                    MM|
|MM                                                                 MM|
|MM                                                                    MM|
|MM        just Change the number in line 30 to the number             MM|
|MM        of the spell gem you want your toon to use to cast buffs    MM|
|MM        and send a tell to the toon for instructions on how to      MM|
|MM        request a buff from Him/Her. This Macro will work with      MM|
|MM        any Character no matter the Class you and your friends      MM|
|MM        just have to know how to spell the buff names correctly     MM|
|MM                                                                   
|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM|
|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM|

#event OOR                                    "Your target is out of range, get closer!"
#event OOR                                    "You must first select a target for this spell!"
#Event Buff                                    "#1#tells you, '#2# Please#*#"
#Event Tell                                    "#*#tells you#*#
#Event OOM                                  "Insufficient Mana to cast this spell!"
#Event ToLow                                "Your spell is too powerful for your intended target."

|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM

Sub Main
        /plugin mq2cast load
        /declare GemNumber int outer             5
        /declare M int outer
        /tgb on
        /call Loop
       
|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
       
Sub Event_Buff   
        /declare RankIII string local        ${Param2} RK.III
        /declare RankIIIb string local        ${Param2} RK. III
        /declare RankII string local        ${Param2} RK.II
        /declare RankIIb string local        ${Param2} RK. II
       
        /keypress esc
        /if (${Me.Book[${RankIII}]}) {
            /memorize  "${RankIII}" ${GemNumber}
            /goto :RKCheckDone
        }
        /if (${Me.Book[${RankIIIb}]}) {
            /memorize  "${RankIIIb}" ${GemNumber}
            /goto :RKCheckDone
        }
        /if (${Me.Book[${RankII}]}) {
            /memorize  "${RankII}" ${GemNumber}
            /goto :RKCheckDone
        }
        /if (${Me.Book[${RankIIb}]}) {
            /memorize  "${RankIIb}" ${GemNumber}
            /goto :RKCheckDone
        }
        /if (${Me.Book[${Param2}]}) {
            /memorize  "${Param2}" ${GemNumber}
            /goto :RKCheckDone
        }
        /reply sorry i do not have that buff yet or you did not spell it rite or it is not a ${Me.Class.Name} buff your requesting
        /return
    }
    :RKCheckDone
            /delay 1s
            /call WaitForSpell
            /delay 1s
            /rtarget
            /delay 1s
            /for M 1 to 120
                /doevents
                /if (${Me.Casting.ID}) /goto :CastingNow
                /cast ${GemNumber}
                /doevents
                /delay 2s
                /next M
        :CastingNow
            /reply casting ${Param2} on you now
            /for M 1 to 120
                /if (!${Me.Casting.ID}) /Return
                /delay 2s
                /next M
            /return
        }
       
|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
       
Sub Event_OOM
        /reply im out of mana rite now i will send a tell when i have mana and you can try again, if no one els sends me a tell between now and then :-)
        /for M 1 to 300
        /if (${Me.State.Equal[STAND]}) /sit
        /if (${Me.PctMana}==100) {
            /reply im full mana now ready to buff again :-)
            /call Loop
        }
        /delay 1s
        /next M
        /call Loop
}

|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
       
Sub Event_OOR
        /reply You are out of range get CLOSER and try again :-)
        /call Loop
}

|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM

Sub Event_Tell
        /reply I am a ${Me.Class.Name} Buff Bot just send a tell with the buff name you want followed by the word please example ->->-> <Buff Name> please
        /return
}

|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM

Sub Loop
    :Loop
        /doevents
        /delay 5
        /if (${Me.State.Equal[STAND]}) /sit
        /goto :Loop
}       

|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM       
       
Sub WaitForSpell   

        /for M 1 to 120
            /if (${Me.Gem[${GemNumber}].ID}) /return
            /delay 5
            /next M
        /return
}

|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
       
Sub Event_ToLow
        /reply sorry you are to low level for that spell please chose a lower lvl spell and try again :-)
        /call Loop
}

- - - Updated - - -

i should prolly add that this was writen for emu servers but it should work on live to if you want to chance it
Author
Micah Conley
First release
Last update
Rating
0.00 star(s) 0 ratings

Share this resource

Back
Top