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

Development::Bots Forum for bots.

Reply
 
Thread Tools Display Modes
  #1  
Old 04-11-2016, 07:33 PM
AsmoTiC
Sarnak
 
Join Date: Aug 2004
Posts: 50
Default

Quote:
Originally Posted by Uleat View Post
I don't 'think' that I changed any of the command/database code for bot-groups in the HR save/HOT code.

If it's truly a bug, then it's probably pre-existing.


Double-check the actual name of the bot-group to see if its all lower, per chance. I did some work with the bot loading code in regard to capitalization..but, I know
that bot-groups will not load 'Rogues' if the case doesn't match 'rogues.'

Also, you can double-check by camping them all out and trying again. (If all else fails, run a query to verify the name of the bot-group.)
Code:
SELECT `group_name` FROM `bot_groups`

The database code is basically set up to 'fail' an action if the criteria is absent (or out of range,) or if there is an actual query error.

Since the logging system will (generally) pass on a failed query to the client, a lack of one accompanying the fail message usually indicates a criteria problem.


I'll wait until I hear back from you before I start looking into the code..but, I will if it definitely turns out to be a bug.
Sorry it's taken this long to get back to you. Pulled the Git from a couple hours ago, and made new binaries, these include the changes you did to Spell AI code.

So, same problems with the Rogues (my second group). Database looks good, bot_groups has two entries:
groups_index 1, group_leader_id 15, group_name Clerics. Leader ID checks for the Bard
groups_index 2, group_leader_id 1, group_name Rogues. Leader ID checks for the Shaman.
In addition, I checked bot_data and bot_group_members and they check against each other (i.e. groups_index checks for bot_id)

I won't repost all the messages, but they report the same as my earlier post. I did try ^bgdelete Rogues, which I don't think I tried last time. This returns "Could not locate group id for 'Rogues'.

I'm pretty sure I can restore my back up, delete the rogues, and recreate them without a problem. Haven't does it yet, as I wanted to keep a state where they were broken incase you wanted to try anything else. Also, if it is a bug somewhere, it could affect others without the means of restoring to an earlier backup.

----
In regards to HR. I went ahead and ran several cycles through the log so I could get timestamps. Here is a start of the rotation showing the 5x casts 2sec apart, then the gap between last CH landing and next cycle starting. Also, I saw at 17:08:03 Bonnet (Cleric4) cast a spell I couldn't identify, right after her CH landed.

Note: Meat is the Warrior, Bubbles, Blossom, Buttercup, Bonnet & Bunny are the Clerics
Code:
[17:07:06] Logging to 'eqlog.txt' is now *ON*.
[17:07:16] You say, '^hrlist Bubbles'
[17:07:16] Heal Rotation Settings:
[17:07:16] Current state: active
[17:07:16] Casting interval: 2 seconds
[17:07:16] Fast heals: 'off'
[17:07:16] Adaptive targeting: 'off'
[17:07:16] Casting override: 'off'
[17:07:16] HOT state: inactive
[17:07:16] HOT target: null
[17:07:16] Base hp limits - critical: 65.0%, safe: 95.0%
[17:07:16] Cloth hp limits - critical: 45.0%, safe: 95.0%
[17:07:16] Leather hp limits - critical: 40.0%, safe: 90.0%
[17:07:16] Chain hp limits - critical: 35.0%, safe: 80.0%
[17:07:16] Plate hp limits - critical: 30.0%, safe: 75.0%
[17:07:16] Heal Rotation Members:
[17:07:16] (1) Bubbles
[17:07:16] (2) Blossom
[17:07:16] (3) Buttercup
[17:07:16] (4) Bonnet
[17:07:16] (5) Bunny
[17:07:16] Heal Rotation Targets:
[17:07:16] (1) Meat
[17:07:28] You say, '^hrsethot Meat'
[17:07:29] Succeeded in setting Meat as the HOT in Bubbles's Heal Rotation
[17:07:29] Bubbles begins to cast a spell.
[17:07:29] Bubbles says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:31] Blossom begins to cast a spell.
[17:07:31] Blossom says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:33] Buttercup begins to cast a spell.
[17:07:33] Buttercup says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:35] Bonnet begins to cast a spell.
[17:07:35] Bonnet says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:37] Bunny begins to cast a spell.
[17:07:37] Bunny says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:39] You are completely healed.
[17:07:41] Blossom performs an exceptional heal! (15000)
[17:07:41] You are completely healed.
[17:07:43] Buttercup performs an exceptional heal! (15000)
[17:07:43] You are completely healed.
[17:07:45] Bonnet performs an exceptional heal! (15000)
[17:07:45] You are completely healed.
[17:07:47] You are completely healed.
[17:07:47] Bubbles begins to cast a spell.
[17:07:47] Bubbles says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:49] Blossom begins to cast a spell.
[17:07:49] Blossom says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:51] Buttercup begins to cast a spell.
[17:07:51] Buttercup says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:53] Bonnet begins to cast a spell.
[17:07:53] Bonnet says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:55] Bunny begins to cast a spell.
[17:07:55] Bunny says 'Casting Complete Heal on Meat, please stay in range!'
[17:07:57] Bubbles performs an exceptional heal! (15000)
[17:07:57] You are completely healed.
[17:07:59] You are completely healed.
[17:08:01] Buttercup performs an exceptional heal! (15000)
[17:08:01] You are completely healed.
[17:08:03] Bonnet performs an exceptional heal! (15000)
[17:08:03] You are completely healed.
[17:08:03] Bonnet begins to cast a spell.
[17:08:05] You are completely healed.
[17:08:05] Bubbles begins to cast a spell.
[17:08:05] Bubbles says 'Casting Complete Heal on Meat, please stay in range!'
[17:08:07] Blossom begins to cast a spell.
[17:08:07] Blossom says 'Casting Complete Heal on Meat, please stay in range!'
[17:08:09] Buttercup begins to cast a spell.
[17:08:09] Buttercup says 'Casting Complete Heal on Meat, please stay in range!'
[17:08:11] Bonnet begins to cast a spell.
[17:08:11] Bonnet says 'Casting Complete Heal on Meat, please stay in range!'
[17:08:13] Bunny begins to cast a spell.
[17:08:13] Bunny says 'Casting Complete Heal on Meat, please stay in range!'
[17:08:15] You are completely healed.
[17:08:17] Blossom performs an exceptional heal! (15000)
[17:08:17] You are completely healed.
[17:08:19] You are completely healed.
[17:08:21] Bonnet performs an exceptional heal! (15000)
[17:08:21] You are completely healed.
[17:08:22] You say, '^hrclearhot Bubbles'
[17:08:22] Succeeded in clearing Bubbles's Heal Rotation HOT
[17:08:23] You are completely healed.
[17:08:34] You say, '^camp spawned'
*footnote* I cleaned up the log a tad to strip bard song, and get a clean time instead of Month, Day, Year, etc.
Reply With Quote
  #2  
Old 04-11-2016, 11:00 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

Pretty sure I borked up the BotDatabase::LoadBotGroupIDForLoadBotGroup() function by placing a 'LIMIT 1' in the query...

I'm pushing a fix for that and I'll review the queries to make sure that I didn't put in 'limits' that shouldn't be there.


Still looking at the timing issue..
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #3  
Old 04-13-2016, 07:32 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

I 'think' I fixed this particular timing issue.


If anyone is still having issues, try bumping your interval up 1 second at a time for several increases and see if the issue resolves itself.

If this corrects the issue, post back with your heal rotation member classes, toon level, and any other information you think might be pertinent.
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #4  
Old 04-13-2016, 09:19 PM
AsmoTiC
Sarnak
 
Join Date: Aug 2004
Posts: 50
Default

Oh yea, that's working really well now Uleat!

Much, Much better, thanks for all the hard work you put into looking into this rotation code!

I'm sure you know all my information by now, but for the record.
Level 65 HR group, Bard Leader, 5x Clerics, 2sec interval.
Reply With Quote
  #5  
Old 04-13-2016, 10:11 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

Np - feedback and persistence
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #6  
Old 04-14-2016, 09:13 AM
jpyou127's Avatar
jpyou127
Discordant
 
Join Date: Nov 2005
Posts: 270
Default

Sweet stuff here Uleat!!


Celestial
Reply With Quote
  #7  
Old 05-17-2016, 12:21 AM
cannon
Hill Giant
 
Join Date: Dec 2004
Location: Pittsburgh, PA
Posts: 128
Default

I got a server up and running and tried bot help and had a bunch of commands atleast 30 or so that i can remember maybe more, i sourced in a couple bot files and now my commands are 17 commands, how do i get the commands back or do i have to source in the commands. sorry for the noobish question. thanks in advance for any input on this.

Think i figured it out, just changed db version in database and reran the world exe and did the updates.
Reply With Quote
  #8  
Old 05-17-2016, 09:40 AM
jaspen
Hill Giant
 
Join Date: Apr 2016
Posts: 107
Default

I am checking to see if a particular command is currently working. I have tried ^botdyearmor and it does nothing but completely bug bots. I have to log out and back in to correct it. I have tried different slots and RGB values, all with the same results. I do have the latest files that I could find. I also tried changing the colors in their inventory section in the database and that didn't do anything.

So, in short, is this feature currently implemented and functioning?

Also, just for flavor I looked that bots_data and noticed there was a size column . I changed the size numbers for multiple bots. Upon summoning them it doesn't appear to make a difference. Obviously, this is me editing things behind the scenes and I didn't expect it to work but I would be interested in hearing your opinion on this.
Reply With Quote
  #9  
Old 05-17-2016, 09:41 AM
jaspen
Hill Giant
 
Join Date: Apr 2016
Posts: 107
Default

Quote:
Originally Posted by cannon View Post
I got a server up and running and tried bot help and had a bunch of commands atleast 30 or so that i can remember maybe more, i sourced in a couple bot files and now my commands are 17 commands, how do i get the commands back or do i have to source in the commands. sorry for the noobish question. thanks in advance for any input on this.

Think i figured it out, just changed db version in database and reran the world exe and did the updates.
Are you using ^help to get your command list? That pulls up 198 commands for me.
Reply With Quote
  #10  
Old 05-20-2016, 09:23 AM
cannon
Hill Giant
 
Join Date: Dec 2004
Location: Pittsburgh, PA
Posts: 128
Default

Quote:
Originally Posted by jaspen View Post
Are you using ^help to get your command list? That pulls up 198 commands for me.
That may have been my fault, I think i did #bot help instead of ^

Still getting use to the ^, so use to using # Thanks.
Reply With Quote
  #11  
Old 05-17-2016, 07:20 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

There is an issue with the bot dye armor command - pre- and post-command system rework.

That's going to take more than a few hours work to figure out what is wrong with the update methodology..so, I left it to a future rework of the class.


The command code works, obviously.

But..the update system, which is not part of the actual bot command system, does not update correctly.
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #12  
Old 05-19-2016, 10:36 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

There's a lot of bot commands..as well, there are a lot of system commands.


I wrote the implementation of the current alias system for both to help control what is a registered alias and what is an actual registered and coded command.

I could look into adding something to both command systems to discriminate aliases from the command listing (..but, not in the near future.)


Quick ref for current bot commands: http://wiki.eqemulator.org/p?Bot_Com...t-command-list


EDIT:

I'm not 100% certain..but, I don't believe that the spell list for the bot spell ai has been updated since the lvl 85 cap - and possibly the lvl 65 cap.

One thing with the new heal rotation code is that it pulls spells from the current load and should have access to the newest spells.
__________________
Uleat of Bertoxxulous

Compilin' Dirty

Last edited by Uleat; 05-19-2016 at 10:44 PM..
Reply With Quote
  #13  
Old 05-20-2016, 04:18 AM
DanCanDo's Avatar
DanCanDo
Discordant
 
Join Date: May 2016
Location: Above Hell
Posts: 400
Default

Quote:
Originally Posted by Uleat View Post
One thing with the new heal rotation code is that it pulls spells from the current load and should have access to the newest spells.
I am looking forward to poking around in the bot spell system, which I haven't
done yet. If a healer bot can be setup to be (kind of) like a player cleric, that
would be awesome.
Right now, I am struggling with something odd with the eqemu_update for bots.
I created a new (but seperate) server/database. source was just pulled and
compiled yesterday with bots enabled. I sourced in a fresh copy of the peq, but
when I run (4) on the updates for bots, I get all sorts of errors and the only
table it loads is the bot_command_settings. I tried using the load_bots sql
but it is quite outdated.
What i ended up doing, was a backup sqldump of all the bot tables in my first
db, then put it all together in to one sql. Sourcing that in ran smooth. All the
bot tables went in successfully, including the healrotation tables which was
one of the biggest errors showing up in the update script.
I ran the update again, it came up with no errors and no updates. But I still
can't seem to get the views and (getmob) function at all from the update.
Reply With Quote
  #14  
Old 05-20-2016, 07:01 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

#bot help is synonymous with ^help due to the redirect I added.


DanCanDo, you may have to manually apply the updates for now, until someone can figure out the best way to implement the bots versioner.
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #15  
Old 05-20-2016, 07:25 PM
DanCanDo's Avatar
DanCanDo
Discordant
 
Join Date: May 2016
Location: Above Hell
Posts: 400
Default

I have 3 different sql files put together (bot_tables, bot_views, bot functions) in a zip
file, in case anyone else needs to use them to source it all in. Works pretty good, and
includes the healrotations in the bot_command_settings as well.
I ran the updates after sourcing them in, no errors, no updates found and didn't get any
mysql errors in my gm client console.

https://drive.google.com/file/d/0B8u...ew?usp=sharing
Reply With Quote
Reply


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 04:49 PM.


 

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 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3