Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Bots

Development::Bots Forum for bots.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 05-26-2009, 09:49 PM
WildcardX
Developer
 
Join Date: Apr 2003
Posts: 589
Default Bot Agression Level

A thought I had was to create a "bot aggression" variable to help guide the bot ai, especially for certain types of bot classes. Right now, I would characterize bot behavior as "aggressive"; meaning when bots aren't healing or casting pets, they are nuking like newbz " Imagine we create 3 aggression modes:

1. Low Aggression
2. Moderate Aggression
3. High Aggression (think meth addict...)

So a bot with "low aggression" would nuke until it's mana was <= 75%, then this bot would conserve it's mana and med (ideal for the "healer" in the group like a cleric, druid or shaman).

A bot with "medium aggression" would nuke until it's mana was <= 50% and a "high aggression" bot (our meth addict) would keep up with the nukes until out of mana. Obviously you need corresponding logic here to guide how long each of these bot's would meditate until before resuming their "aggression".

Perhaps you can combine this idea of "bot aggression" with implementing another concept, "bot duties". We all know that in a group there is a "healer", a "tank" and someone is usually assigned "snare duty". So say we also create a command where we can assign these "duties" to our bots. So if we give the command:

#bot group tank

That should set a "property" with the bot that other bots can check and take appropriate actions. For the "healer", it would mean this bot gets a priority heal. For DPS bot members, it means not to engage until the tank has caused 5% to 8% damage (thus earned good aggro) and maybe it can tell these other bots to not over aggro with spells like over nuking or casting root, etc.

The bot on snare duty would auto cast a a snare spell when the target was under 25% of it's hit points.

The bot on "heal duty" should lower it's aggression level to "low aggression" and conserve it's mana only for heal spells and buffs. perhaps we could add additional logic here to calculate the rate at which the group tank is losing hit points. If the ratio of lost hit points is low, then the bot ai can increase it's aggression level by one level so it's being as useful as possible.

Another idea I had was right now a bot corpse vanishes when a bot dies and it auto leaves the group, even though a battle continues. Why not let the bot create a corpse and allow the group to rez it? Given, if this group doesn't have a cleric then i can see where some players would scream in pain at this suggestion, but it would add another dimension to the game. So if the bot dies, say it leaves a corpse and the bot stays in the group. If the cleric casts rez on the corpse, then the bot comes back and loots it's corpse, begins to med or whatever. If instead the player zones or disbands the group, then the bot's corpse simply vanishes as it does now.

Lastly, and I know this is ambitious, but why not let bots accumulate experience points and aa points like a player does? We can add logic to help guide the bot spending these aa points and to add new spells to it's spell list (and why not let each bot have it's own spell list for that matter!).

I might implement some of these ideas so I'd like to hear everyone's thoughts.
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 02:46 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3