Buff

From Entropy

buf'eng
_verb_; the act of placing illusions of superiority on tanks so they think they can tank shit when they really can't.

AssTank tells the raid: 'need all buffs the cleric didn't heal me..'


/buff

You have 50 slots for buffs. A buff can come from an item, a spell, a disc. They do not need to be created in order.


buff ## name [gem#|cursor|"Spell Name"] This lets you assign the buff name to slot number ##. The name is what you want to cast. Not the effect you want, just simply the name of the spell, item or disc.
buff ## alias [name] The alias is the key word used to watch for /buff beg requests
buff ## tag [tagnames(S)] [add|delete] Lets you add a tag or tags to the specific buff
buff ## is a toggle [on|off] to enable/disable that specific buff
buff aux will show the inline help for buffs
buff see will show all variables for all buffs
buff ## see will show all the information for a specific buff
buff ## clear will reset a buff slot to defaults
buff ## tag clear will reset all tags for that buff ## to defaults
buff ## alias FALSE will turn an alias off/disable it

Example of creating a buff:

Assumptions: I have the cleric buff Temperance in gemslot 1 and I'm going to make this buff 15.
/buff 15 gem1 - will add the name of gem1 to buff 15
/buff 15 tag crew|group|self|nocombat add - will add all the tags listed there to buff 15
/buff 15 on - will turn buff 15 on so it can be used

Now, with /buff crew enabled, temperance will get placed on every one of your dannet peoples. With /buff group enabled, it will get cast on your mercs and other live players. And, with /buff self enabled, it will get cast on you. The nocombat tag will prevent it from getting cast while the ceric is in active combat.


Controls

ammo buff ammo thingies
aura aura buffs
beg answer /beg requests for buffs
crew buff your dannet peeps
group buff group members: mercs and other real players (not dannet crew)
master master switch for ALL buffing
now buff 24/7 buffs
ps borked, don't use
raid buff raid members (not dannet)
self buff self only
shrink submenu see below
temp buff temp buffs during combat
unity buff class AA Unity buff


buff . ammo:off . aura:on . beg:on . crew:on . group:off . master:(on) . now:on . ps:off . raid:off . self:on . shrink:-> . temp:on . unity:on

ammo


required tag: buff::summonrange for non zerkers
required tag: buff::summonaxe for zerkers

/buff ammo on allows the code to look for the summonrange or summonaxe tags to get ranged items.

aura


required tag: buff::aura

Turns on or off using auras. Not all classes have auras, if you turn this on and you don't have an aura, there not much anyone can do for you.

example auras:

stBuff49::Aura of Divinity
stBuff49Alias::FALSE
lsBuff49Tag
. buff::aura::marker /buff aura
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}

stBuff50::Aura of the Reverent
stBuff50Alias::FALSE
lsBuff50Tag
. buff::aura::marker /buff aura
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}
. buff::reverentaura::!${Me.Aura[1].Name.Equal[Reverent Aura]} && !${Me.Aura[2].Name.Equal[Reverent Aura]}

NOTE
Cleric Reverent Aura is a unique case. It requires a tag to look for the landing buffs as there is no way to associate the spell cast with what lands in EQ/MQ world. Like so.

/tag buff reverentaura "!${Me.Aura[1].Name.Equal[Reverent Aura]} && !${Me.Aura[2].Name.Equal[Reverent Aura]}"

beg


crew


required tag: buff::crew
This buff mode will only work for players that you control in your dannet channels. The crew tag will not buff you. that requires the self tag.

Example:

stBuff1::Unified Hand of Righteousness
stBuff1Alias::surety
lsBuff1Tag
. buff::crew::marker /buff crew (dannet peoples)
. buff::group::marker /buff group (not dannet, outsiders and mercs)
. buff::noraid::!${Raid.Members}
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}

group


required tag: buff::group
This will buff other people in your group that you are not boxing. Like Mercs, or other real players. It will not buff DanNet members.<br/?

Example:

stBuff1::Unified Hand of Righteousness
stBuff1Alias::surety
lsBuff1Tag
. buff::crew::marker /buff crew (dannet peoples)
. buff::group::marker /buff group (not dannet, outsiders and mercs)
. buff::noraid::!${Raid.Members}
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}

master


This is a master switch for all buffing. It is on by default. IF you restart the mac, it will be reset to on. When set to off(FALSE), ALL buffing will be disabled.


now


required tag: buff::now
Used for buffs you want on you 100% of the time. Like a geomantra, shaman preincarnation, ranger poison arrows, rogue dagger poisons. This is the most actively checked buff, it is best to use it as little, for as few things, as possible.

Example:

stBuff44::Velium Enhanced Charm of Security
stBuff44Alias::FALSE
lsBuff44Tag
. buff::now::marker /buff now 24/7 buffs, always have them
. buff::incombat::${Select[${Me.CombatState},combat]} || ${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}

ps


do not use

raid


required tag: buff::raid

self


required tag: buff::self
Buffs you only intend to cast on yourself. Don't over complicate this.

Example:

stBuff41::Snow Griffin Saddle
stBuff41Alias::FALSE
lsBuff41Tag
. buff::drop::removes illusion and mount buffs
. buff::self::marker /buff self
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}
. buff::outdoor::!${Zone.Indoor}

shrink


item what you want to use to shrink yourself with
active enable self shrinking

/buff shrink . item:[off] . active:off
Self shrinking only. This will make sure you are less than `2.04` in height.

temp


required tag: buff::temp

This is designed for buffs you want to keep on others that are only useful while in combat. They were specifically designed to be used with the name tag system, but can be made more general with other tags.
It is important you do not abuse this system, it takes away from doing other important things like deading mobs.


- Temp buffs are cast in the misc_dpc combat routine for all classes. In combat only. (cleric is the only exception to this rule)
- Only one (1) temp buff will be cast per timer cycle. This is intentional.
- Will not buff pets, mercs, or non DanNet people.
- Does not read SPA data. If the landing buff is not the name as the casting buff, do not use it as a temp buff.

unity


Enable using the Class AA unity. Requires no tags or anything. Turn it on and it works.

Odd Cases

rogue leg poisons

Rogue leg poisons require 2 buff slots. One for the summoning from the legs, and another to use what has been summoned.

example of getting poison from legs:br/>

stBuff5::Velium Infused Shadowscale Leggings
stBuff5Alias::FALSE
lsBuff5Tag
. buff::summonpoison::marker pants poison summoning for rogues
. buff::autoinventory::forces your hands emptied
. buff::dropinvis::drops invis and sos
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}
. buff::self::marker /buff self

If the rogue does not drop SOS, it will not cast. So, dropinvis is a required tag.


To use the poisons that are summoned from the legs:br/>

stBuff6::Consigned Bite of the Shissar XX
stBuff6Alias::FALSE
lsBuff6Tag
. buff::now::marker /buff now 24/7 buffs, always have them
. buff::self::marker /buff self

This combination of tags allows the rogue to use it as both a self buff and keep it applied during combat.

quiver ammo

An example of using a Huntsman's Ethereal Quiver.

stBuff43::Huntsman's Ethereal Quiver
stBuff43Alias::FALSE
lsBuff43Tag
. buff::autoinventory::forces your hands emptied
. buff::summonrange::marker ranged summoning, like arrows, or daggers

zerker axes

You can run multiple summoning buffs for classes.

Examples:

stBuff2::Axe of the Mangler
stBuff2Alias::FALSE
lsBuff2Tag
. buff::summonaxe::marker axe summoning for zerkers
. buff::autoinventory::forces your hands emptied

stBuff3::Axe of the Demolisher
stBuff3Alias::FALSE
lsBuff3Tag
. buff::summonaxe::marker axe summoning for zerkers
. buff::autoinventory::forces your hands emptied

keeping a familiar buff running

Familiars will not auto leave. There are several reasons not too. So, if you want your familiar to poof, you will need to enable Auto Leave checkbox in the familiar keyring.

stBuff41::Emperor Ganak Familiar
stBuff41Alias::FALSE
lsBuff41Tag
. buff::self::marker /buff self
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}

SPA Method

I'd like to start this off by saying, this is not a 100% effective method for setting up buffs. There are quite a few buffs that contain the same filters so the the code will not pull them from the spell book properly. That being said, for most buffs, this is an option to enter a buff once, and it will adapt as you put better version in your book as you add them.

The following is an example of my clerics buff list.

Buff List::
stBuff1::on::|Group V2|Aegolism|Max HP . (Unified Hand of Righteousness)
stBuff2::on::|Single|Aegolism|Max HP . (Unified Righteousness)
stBuff3::on::|Group v1|Melee Guard|Melee Guard . (Rallied Greater Protection of Vie Rk. III)
stBuff4::on::|Self|Heals|Ff_Value_Max . (Divine Reaction Rk. III)
stBuff5::on::Shining Aegis
stBuff6::on::|Single|Symbol|Max HP . (Unity of Jorlleag)
stBuff10::off::|Self|Combat Innates|Contact Ability (Melee Proc) . (Vow of Vituperation Rk. III)
stBuff11::off::|Single|Misc|Damage Attackers (DS) . (Curate's Retort Rk. III)
stBuff12::off::Shining Aegis
stBuff40::on::Frozen Crystal Shard
stBuff41::on::Snow Griffin Saddle
stBuff42::on::Jann's Veil
stBuff43::on::Emperor Ganak Familiar
stBuff44::on::Velium Enhanced Charm of Security
stBuff45::on::Signet of Gannar
stBuff49::on::|Self|HP Buffs|Spawn Interactive Object . (Aura of Divinity Rk. III)
stBuff50::on::|Self|Melee Guard|Spawn Interactive Object . (Aura of the Reverent Rk. III)
................

Notice, buff 2, where the name normally is, you see |Single|Aegolism|Max HP with spell name after it in (). This is the code using the three filters I enter for the name finding the best matching spell in the clerics book.

To get the information you need to set a buff up like this, you need access to the spells target type, its subcategory and an unique SPA that it can match against. To find this info, use the following command (still using buff 2 as an example)

/admin spa "Unified Righteousness"

This will give you the following information:

  
Unified Righteousness :: ID 58642 :: Group 4865 :: lvl 112
Ward of Injunction :: ID 58645
Target Type :: Single
Sub Category :: Aegolism
SPA Count :: 2
#1
. .Attrib 374 . Trigger Spell
. .Trigger Benediction of Reverence . ID:58579 ()
. .Base 100
. .Max 0
. .Calc 100
. .Restrictions Unknown[58579]
. .Extra
#2
. .Attrib 374 . Trigger Spell
. .Trigger Righteousness . ID:58636 ()
. .Base 100
. .Max 0
. .Calc 100
. .Restrictions Unknown[58636]
. .Extra
. . . .
SPA list :: 374 374
................

To create the buff: /buff 2 "|Single|Aegolism|Max HP"
You can see if it worked with /buff 2 see

 
Buff #2::on
stBuff2::|Single|Aegolism|Max HP . (Unified Righteousness)
stBuff2Alias::FALSE
lsBuff2Tag
. buff::self::marker /buff self
. buff::nocombat::!${Select[${Me.CombatState},combat]} && !${SpawnCount[npc radius ${maEnv.Find[stEnvSafeRadius].Value} playerstate 4]}
................

The name should evaluate to the spell you are after.
If it does not, try a different SPA if there is one.