• 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 --->

Plugin request (1 Viewer)

thez

Well-known member
Joined
Jan 9, 2006
RedCents
210¢
I posted this elsewhere, but here's hoping that I can get some sort of response from the people here. Those of you that know me know that I don't normally just ask for something. I'm the kind of person that likes to figure something out, because there's more benefit in it. But I've tried starting this plugin every which way I can imagine, looked at all the examples I can look at, and to be honest, I'm just done with the project, so I was hoping I could ask here and see what would happen.

I use my HUD to track the buffs that my necro needs. The segment is this:
Rich (BB code):
[buffs]
Title=3,152,106,0,255,255,Missing Buffs
Nec=3,153,116,255,0,0,${If[!${Me.Buff[Otherside Rk. II].Duration},Lich,]}
AoE=3,152,126,255,0,0,${If[!${Me.Buff[Aura of Eternity].Duration},Aura,]}
FoE=3,152,136,255,0,0,${If[!${Me.Buff[Form of Endurance II].Duration},Veil,]}
Regen=3,152,146,255,0,0,${If[!${Me.Buff[Frostreaver's Blessing].Duration},Ring,]}
Mana=3,150,156,255,0,0,${If[!${Me.Buff[Reyfin's Racing Thoughts].Duration},Mana,]}
Mask=3,150,166,255,0,0,${If[!${Me.Buff[Aura of Pure Arcanum].Duration},Mask,]}
Lev=3,150,176,255,0,0,${If[!${Me.Levitating},Levi,]}
Dru1=3,152,186,255,0,0,${If[!${Me.Buff[Hand of Conviction].Duration},${If[!${Me.Buff[Conviction].Duration},${If[!${Me.Buff[Blessing of Steeloak].Duration},${If[!${Me.Buff[Direwild Skin].Duration},${If[!${Me.Buff[Direwild Skin Rk. II].Duration},${If[!${Me.Buff[Steeloak Skin].Duration},${If[!${Me.Buff[Blessing of the Direwild].Duration},${If[!${Me.Buff[Blessing of the Direwild Rk. II].Duration},Skin,]},]},]},]},]},]},]},]}
Dru2=3,152,186,255,0,0,${If[${Me.Buff[Conviction].Duration},Skin(Conv),]}
Dru4=3,152,186,255,0,0,${If[${Me.Buff[Tenacity].Duration},Skin(Tenacity),]}
Dru4=3,152,186,255,0,0,${If[${Me.Buff[Tenacity Rk. II].Duration},Skin(Tenacity),]}
Dru3=3,152,186,255,0,0,${If[${Me.Buff[Hand of Tenacity].Duration},Skin(Tenacity),]}
Dru3=3,152,186,255,0,0,${If[${Me.Buff[Hand of Tenacity Rk. II].Duration},Skin(Tenacity),]}
Dru5=3,152,186,255,0,0,${If[${Me.Buff[Hand of Conviction].Duration},Skin(Conv),]}
Clr1=3,152,196,255,0,0,${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[${Me.Buff[Blessing of Steeloak].Duration},Symbol,]},]},]},]},]},]},]}
Clr2=3,152,196,255,0,0,${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[${Me.Buff[Steeloak Skin].Duration},Symbol,]},]},]},]},]},]},]}
Clr4=3,152,196,255,0,0,${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[${Me.Buff[Direwild Skin].Duration},Symbol,]},]},]},]},]},]},]}
Clr6=3,152,196,255,0,0,${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[${Me.Buff[Direwild Skin Rk. II].Duration},Symbol,]},]},]},]},]},]},]}
Clr7=3,152,196,255,0,0,${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[${Me.Buff[Blessing of the Direwild Rk. II].Duration},Symbol,]},]},]},]},]},]},]}
Clr8=3,152,196,255,0,0,${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[${Me.Buff[Blessing of the Direwild].Duration},Symbol,]},]},]},]},]},]},]}
Clr5=3,152,196,255,0,0,${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[${Me.Buff[Blessing of Direwild].Duration},Symbol,]},]},]},]},]},]},]}
Clr3=3,152,196,255,0,0,${If[!${Me.Buff[Conviction].Duration},${If[!${Me.Buff[Tenacity].Duration},${If[!${Me.Buff[Tenacity Rk. II].Duration},${If[!${Me.Buff[Hand of Conviction].Duration},${If[!${Me.Buff[Hand of Tenacity].Duration},${If[!${Me.Buff[Balikor's Mark].Duration},${If[!${Me.Buff[Elushar's Mark].Duration},${If[!${Me.Buff[Elushar's Mark Rk. II].Duration},${If[!${Me.Buff[Symbol of Balikor].Duration},${If[!${Me.Buff[Symbol of Elushar].Duration},${If[!${Me.Buff[Symbol of Elushar Rk. II].Duration},${If[!${Me.Buff[Blessing of Direwild].Duration},${If[!${Me.Buff[Blessing of Direwild Rk. II].Duration},${If[!${Me.Buff[Blessing of Steeloak].Duration},${If[!${Me.Buff[Direwild Skin].Duration},${If[!${Me.Buff[Direwild Skin Rk. II].Duration},${If[!${Me.Buff[Steeloak Skin].Duration},Tenacity/Symbol,]},]},]},]},]},]},]},]},]},]},]},]},]},]},]},]},]}
Pal=3,152,206,255,0,0,${If[!${Me.Buff[Brell's Brawny Bulwark].Duration},${If[!${Me.Buff[Brell's Stony Guard].Duration},${If[!${Me.Buff[Brell's Stony Guard Rk. II].Duration},Brells,]},]},]}
Pal2=3,152,206,255,0,0,${If[${Me.Buff[Spiritual Vim].Duration},Brells(Vim),]}
Shm=3,152,216,255,0,0,${If[!${Me.Buff[Dire Focusing Rk. II].Duration},${If[!${Me.Buff[Dire Focusing].Duration},${If[!${Me.Buff[Wunshi's Focusing].Duration},${If[!${Me.Buff[Talisman of the Dire].Duration},${If[!${Me.Buff[Talisman of the Dire Rk. II].Duration},${If[!${Me.Buff[Talisman of Wunshi].Duration},Focus,]},]},]},]},]},]}
Bst=3,152,226,255,0,0,${If[!${Me.Buff[Spiritual Enlightenment].Duration},${If[!${Me.Buff[Spiritual Enlightenment Rk. II].Duration},${If[!${Me.Buff[Spiritual Ascendance].Duration},Bst crack,]},]},]}
Enc=3,152,236,255,0,0,${If[!${Me.Buff[Gift of Brilliance].Duration},GoB,]}

As you can see, it's fairly insane. And while it works, it's fairly inefficient, and ends up lagging me out even when I've adjusted the HUD updating frequency, etc., not to mention that it's a BITCH to add in new spells...IE, for every new druid spell, I have to add in another line of code to the Hud...not pleasant to have to keep doing, as the expansion showed me.

So here's what I'm looking for:
A plugin that makes available as MQ2Data whether or not you have a spell from a defined list of spells on you. The list would be defined in a section of an INI, where the plugin is told to look at all (or preferably, just some) of the sections. Each section would be a spell line. Under [Cleric]: Virtue, Hand of Virtue, Conviction, Hand of Conviction, Tenacity, Tenacity Rk. II, Tenacity Rk. III, Hand of Tenacity, Hand of Tenacity Rk. II, Hand of Tenacity Rk. III, and then on to druid skin buffs, etc. If there is a buff on you in that ini section, the plugin tells the TLO that you don't need the buff. Say... ${Buff.Need} spits out all of the sections that aren't on you, ${Buff.Need[Cleric]} returns whether or not you have a buff from that section.

Now obviously, this is something of a tall order, even if the types of examples for code that are needed are out there...MQ2Hud for the section usage, MQ2Debuff for the TLO setting, MQ2Bufftools for the code for reading buff window, MQ2Randomstuff for checking through the lines.

If it's too much...well, just tell me, and I'll go back to dreaming. If it's too much to do for free...let me know, we'll see if we can work something out.

Thanks in advance,
TheZ
 
Not that it's any help with the plugin, but, the Krust Macro Does something sort of like this.

There is a Krust Data window, which will display missing buffs, based on an .inc file. It even adjusts the missing buffs displayed based on group / raid status, and based on the classes in the raid of your group. (So it dosent tell you, you need Tenacity, if you don't have a cleridc in the group/raid.)

Not sure if thta macro, or any of the information in it will help you, but it may be a start to figuring out the coding for it.
 
I used to do this by Events in a macro of mine. "your vigor fades" ...ect. It worked well, but every once in a while it would miss a buff dissapearing. So i tried it on timers and it would rebuff early.

But its not a plugin....maybe it might give you some ideas tho
 
Yeah, I know it *could* be done with a macro, but I'm really trying to get the code in plugin form. I run macros almost constantly on my characters, even if it's only a basic one, and modding them ALL to include krust code for my hud would be...annoying.
 
Hey TheZ's .....

So, you want a plugin that tells you which buffs you are missing? Whats up with the naming scheme? I noticed you have "Dru1= ... Hand of Conviction ...." But Druid's can't cast that ...

There are a couple of ways to make this happen. Do you want the actual names to appear in your HUD, or simply a number of missing buffs and you do a /buffcheck to give you you the names?

We need some more details in what you want this thing to do for you.
 
This isn't plugin related, but Me.Buff was modified to look for the different rank spells automatically.

INI:
/echo ${Me.Buff[Voice of Intuition]}

returns Voice of Intution Rk. II if that is what you have on.
 
HUD, please. Dru1, and all of the Dru lines check to see if the skin buff will hold...ie, if there is a cleric buff on like Conv, Virt, or Ten, that would block it. Each line also checks to make sure that the buff will land.

Basically, I'm talking about this: I'd like to be able to define an INI entry like the following:
Rich (BB code):
server_Character.ini
[Cleric1]
Buff1=Tenacity
Buff2=Hand of Tenacity
Buff3=Conviction
etc...

[Cleric2]
Buff1=Symbol of Elushar
Buff2=Elushar's Mark
etc..

[Druid]
Buff1=Direwild Skin
Buff2=Blessing of the Direwild
Buff3=Steeloak
etc...

[Shaman]
etc.

What the plugin would do is go down the list, and if one of my buffs was on one of those lists, the plugin would return the name in TLO form that was TRUE. Or, hell, just make a few examples of TLOs in the code, and have the TLOs set by the CPP itself. Format of the TLO would be something like this.

${BuffChecker.Druid} is true if I have a skin buff
${BuffChecker.Cleric1} is true if I have a Ten-line buff
etc...

That would allow me to move the HUD checks into one line...if ${BuffChecker.Druid} is false, I need skin. If ${BuffChecker.Cleric1} is true, then I'll need to click it off before I can get skin (but I don't want to automatically click it off, because I won't always have druids available).

That help, Yami?
 
Plugin request

Users who are viewing this thread

Back
Top