EQ2bot Enhancement Discussion

Pygar

EQ2Bot Specialist
First off. For suggestions not on topic, please submit them into the EQ2Bot Feature Request project section. I don't have time to discuss every single little wish list item here.

I've been lapse in posting about current direction and changes to EQ2Bot, so I wanted to start this thread. Amadeus and I have been adding lost of new features as well as fixing many long broken ones. Occasionally we step on each others toes in there, but the code in general has been getting much, MUCH better at what it does.

Here are my current directions with EQ2Bot:

Spell Queuing:
The basic mechanics to make this work were added by Amadeus a few weeks ago, however this has had adverse affects on some classes while greatly helping others. I'm working very hard at ballancing these functions out to be useful for everyone. I've completed several passes of these changes with the eq2bot in experimental and it contains nearly completely re-written spell casting logic. For those of you who write class files, CastSpellRange has new parrameters you need to be aware of.

CastSpellRange is now directed to either Queue the spell passed, cast the spell immediately by interupting anything currently casting, or lastly to wait for the current spell to cast before casting. This is important as the position checks associated with the spell only fire when the spell is queued. So if the spell being passed might not be at the same position as the previous spell sent, you should use the CastSpellWhen directive of wait for current spell to cast (CastSpellWhen = 2).

Immediate casting is intended for certain emergency heals (CastSpellWhen = 1). Curse curing being the most obvious, but I've directed my defiler to interupt anything he's casting and cure if EpicMode is on. I leave it up to class file authors to choose how to use this.

CheckPostion:
Thanks to Valerian, the experimental eq2bot uses some new math routines to detect it's position relative to a target. This is much more reliable than what was previously used. In addition, we can now compute the actual max melee, max CA, and max spell range from a mob, rather than relying on the .Distance checks which were not accurate. In essence, you might have a nuke of a range of 30 meters, and a mob might report 40 meters distance from you. Strangely, this mob might actually be in range, as .Distance is computed from the center of the mob's feet. In Eq2, there is actually an 'effective radius' around a mob that counts for being in 'range'. The new code checks range relative to this ring rather than the center of the model. This new code allows for melee, ca, and spell range checks to be much more accurate and useful.

InCombat Movement:
With the changes to CheckPosition and target radius, we're now able to make much more inteligent decisions in where and how we move. We're also able to detect our relative position to the mob in a much more highly accurate manner. In this way classes can now more rapidly move to a target, move to the needed range for their damage type and begin being effective. In addition, strafe movement has been added. This should begin to positively impact melee dps classes as they will be able to strafe arc between position checks allowing melee swings to not be interupted.

Eq2botLib:
CommonHeal funciton added to eq2bot lib. This new function will now consume clicky heal items as needed. It will also consume potion heals if directed in the extra's UI tab. This function replaces the Crystalized Essence function and any class that previously used defiler essences automatically, will not use the rest of these items as well. In additoin to items, the Fury Salve AA heal is added to common heals, so if a fury has cast this ability on you, you will use Salve to keep yourself healed.

CommonPower function added to eq2botlib. This new fuction will consume clicky power items as needed. It replaces the shard function and any class that previously consumed shards, will now also consume other miscelaneous power click items including potions if the UI option is selected.

At this time, neither function will consume signets, I'm still on the fence about adding signet consumption to the bot.

I've been testing on the experimental version and I urge others to give it a try and report any feedback. I'm sure some further tweaking will be required for it to work well under all conditions. However, last night I was able to squeeze an extra 800dps out of my dirge, nearly a 40% increase in her effectiveness.

Any comments, suggestions, or discussion on the above topics is welcome in this forum. And again, other suggestions should be directed to the eq2bot feature request section of the forums.

Thanks,

Pygar
 

wired203

Active Member
Pygar does the common power functions include totems, and if so does it support casting multiple tiers of totems at the same time since each tier stacks?
 

Pygar

EQ2Bot Specialist
Currently it does not include totems. I was focused on incombat power regen, but I can add the totems in.

If someone could give me a complete list of them, or a link, that would help me along that path.
 

wired203

Active Member
Found a link, covers all totems. For your convience I'll also post them here.

http://eq2.wikia.com/wiki/Totems

Number on the left is mininum level needed to cast said totem.

1 Spirit Totem of the Beetle Increases out of combat power regen per tick by 12

10 Spirit Totem of the Rat Increases out of combat power regen per tick by 24
Shapeshifts caster into a rat

20 Spirit Totem of the Winged Viper Increases out of combat power regen per tick by 36
Shapeshifts caster into a flying snake

30 Spirit Totem of the Bat Increases out of combat power regen per tick by 48
Shapeshifts caster into a bat

40 Spirit Totem of the Hawk Increases out of combat power regen per tick by 60
Shapeshifts caster into a hawk

50 Spirit Totem of the Monkey Increases out of combat power regen per tick by 72
Shapeshifts caster into a monkey

60 Spirit Totem of the Beholder Increases out of combat power regen per tick by 84
Shapeshifts caster into a beholder

70 Spirit Totem of the Goblin Increases out of combat power regen per tick by 96
Shapeshifts caster into a goblin
 
Top Bottom