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

Development::Bots Forum for bots.

Reply
 
Thread Tools Display Modes
  #1  
Old 02-02-2011, 10:06 AM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default Bots won't respond

So I'm running rev 1751, compiled with bot support. I did have to grab the patchfile that has the three missing fields for Corruption, but once those were added I was able to create bots successfully.

Bots will join my group without issue, and my cleric bot will cast resists, but is seemingly unable to do anything else. No heals, she won't attack if I order her to with #bot group attack.

I tried creating a magician, but he doesn't do anything. I can't get him to create a pet or attack anything, but as with the cleric, he will join my group.

I then tried logging onto a server with bots enabled and when I created and spawned a magician, he instantly cast a spell on himself and sat down. I was only level 1. He would also attack targets I specified. I wasn't able to get him to summon a pet, but he did respond that he had no pet spells (I guess magicians don't get pets at 1st?)

Any ideas? I'm not sure what I'm missing? Perhaps some plugins or scripts?

Thank you!
Reply With Quote
  #2  
Old 02-02-2011, 10:29 AM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

that's pretty old, try the new one 1834
http://code.google.com/p/projecteqemu/downloads/list
__________________
The Realm
Reply With Quote
  #3  
Old 02-02-2011, 11:31 AM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default

Quote:
Originally Posted by Congdar View Post
that's pretty old, try the new one 1834
http://code.google.com/p/projecteqemu/downloads/list
Ah, that was a typo. I am on:

DB Version: 1751
Emu Source Version: Grabbed latest on 2010-01-22

I'm going to try rebuilding both the DB and getting the latest code as well as the latest binaries and see if the issue is fixed both when I build with bots and if not, if it works with the precompiled bot-support binaries.
Reply With Quote
  #4  
Old 02-02-2011, 12:04 PM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default

Ok, so I DLed the latest compiled binaries (Rev 1834) and installed them. They appear to be compatible with my DB so I didn't need to reinstall that portion of the emu.

The problem is still present, but it appears to be more a case of bots not casting spells than bots not listening at all.

My magician will follow and attempt to attack targets, but he won't close to melee range (which makes sense). Instead, he gets to what I assume is a safe casting distance and then starts bouncing up and down (without casting).

My warrior bot (I just made him) will close and attack, so I'm wondering if it's that bots won't cast spells (the mage won't cast anything and the cleric would only cast resist buffs, but it wouldn't heal me at all).
Reply With Quote
  #5  
Old 02-02-2011, 02:38 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

http://www.eqemulator.org/forums/showthread.php?t=32964
__________________
The Realm
Reply With Quote
  #6  
Old 02-02-2011, 03:44 PM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default

Quote:
Originally Posted by Congdar View Post
There are several possibilities in that thread. To which are you referring?

It isn't a case of the bots not being updated with #bot update. Even at level 1 they would cast some form of buff on the group.

My npc_spells table contains entries for bot spell groups 701 - 712. The npc_spells_entries table has records for each of the bot spell groups. I wasn't able to find the bot_spells.sql file that bad_captain referenced, but I did check and the entries were in peqdb_rev1751.sql. I also checked http://projecteqdb.googlecode.com/svn/trunk in case I somehow missed that file when I redownloaded the latest source.

I checked about 5 other servers with bots and none of them exhibited the same problems I was seeing on my system. So either my copy is in some way malfunctioning or the latest bot code is less functional than the version in use by those systems.

You made a post on the 26th which implies that the new AI is at fault. Is the behavior I am seeing the normal behavior for the latest and greatest? If that is the case, do you know when a fix will be available?

Thank you!
Reply With Quote
  #7  
Old 02-02-2011, 04:31 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

i was referring to my post in that thread. there are a few different versions of bots on public servers. some devs have made their own customizations and some have the older version of the bot system so it's hard to compare to what you've experienced on other servers. there is no fix in the works for the svn version, but eventually it will be repaired. the spells are in the database now, so you don't need bot_spells.sql anymore. i have not looked much at the new spell ai, but I believe that it needs some attention, or maybe I just don't have my cleric set right in the new ai.
__________________
The Realm
Reply With Quote
  #8  
Old 02-02-2011, 04:41 PM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default

Quote:
Originally Posted by Congdar View Post
i was referring to my post in that thread. there are a few different versions of bots on public servers. some devs have made their own customizations and some have the older version of the bot system so it's hard to compare to what you've experienced on other servers. there is no fix in the works for the svn version, but eventually it will be repaired. the spells are in the database now, so you don't need bot_spells.sql anymore. i have not looked much at the new spell ai, but I believe that it needs some attention, or maybe I just don't have my cleric set right in the new ai.
Thanks for the clarification! I'm going to go ahead and fire up the debugger and see what I can find.
Reply With Quote
  #9  
Old 02-03-2011, 04:00 AM
Yujiro93
Sarnak
 
Join Date: Jan 2011
Posts: 34
Default

Hello,

I had the same problem and i'm with rev1834.
My wife resolved the problem by updating manually the DB and skiping one of the updates which was causing troubles with bots.
Can't remember exactly what is the skiped update but if you want to try this solution, i can ask here for more details.
Reply With Quote
  #10  
Old 02-03-2011, 10:37 AM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default

Quote:
Originally Posted by Yujiro93 View Post
Hello,

I had the same problem and i'm with rev1834.
My wife resolved the problem by updating manually the DB and skiping one of the updates which was causing troubles with bots.
Can't remember exactly what is the skiped update but if you want to try this solution, i can ask here for more details.
If you get a chance, could you ask her for more information? My build is now more functional thanks to bad_captain. He suggested that I double-check my Maps files, and it turns out I was missing some of them. If she applied the updates, which version of the schema did you start with? I thought the latest version of the DB (1751) had all of the updates automatically applied?

Adding in the missing files removed the "I'm a bot and I'll just run straight to the target" problem. Now they follow the terrain, but they still don't cast. =P

I'm going to drop VS2008 on my server today and see if I can debug out the problem. bad_captain said it may be a line-of-sight issue (hence the map suggestion), but I'm wondering if now I'm hitting the database problem you encountered.
Reply With Quote
  #11  
Old 02-03-2011, 11:06 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

When updating to newer revisions, I always back check the sql files, as well as the changelog. I'm not aware of any changelog sql changes lately, so it's probably just an sql file that needs to be sourced. Check specifically for 1793_resist_adjust.sql. What I do is load the file in MySQL Query Browser, see what the file does, then check those tables that it affects to see if I need to source it or not. Most should fail if they are already in, but I prefer not to test it out. Sometimes they are added into the full peq db script right away, sometimes not. If it appears all are correctly sourced in, then debug. Check for any place there is a GetBotSpells() call, and see if you get any spells. If you do, then there's something keeping them from casting, otherwise, it's almost certainly a db issue.

I couldn't find it, but I thought there was a #command to view an npc's spell list. That might be something that would be useful.
Reply With Quote
  #12  
Old 02-03-2011, 02:18 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

Quote:
Originally Posted by bad_captain View Post
I couldn't find it, but I thought there was a #command to view an npc's spell list. That might be something that would be useful.
it's not documented but if you look in the source it's there
#bot debug spells
__________________
The Realm
Reply With Quote
  #13  
Old 02-03-2011, 04:43 PM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

That's it. I searched for the word spell, but only went through the list that comes up with #bot help, so I didn't see it. That's nice to know.
Reply With Quote
  #14  
Old 02-03-2011, 09:12 PM
Yujiro93
Sarnak
 
Join Date: Jan 2011
Posts: 34
Default

Last update of DB 1751 is wrong. one or few updates are missing like the one which adds the corrupt column in one of the bots tables. Doing updates one by one just worked for me.
Reply With Quote
  #15  
Old 02-04-2011, 09:28 AM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default

Quote:
Originally Posted by Yujiro93 View Post
Last update of DB 1751 is wrong. one or few updates are missing like the one which adds the corrupt column in one of the bots tables. Doing updates one by one just worked for me.
From what I can find, the issue is that Bot::AI_IdleCastCheck (in botspellsai.cpp) runs continuously. The flow of events is that the function is called and the first IF statement is called (evaluating AIautocastspell->check(false), does not evaluate to true, and then AI_IdleCastCheck ends.

It is then called again, etc.

I then tried the #bot debug spells command. No output was produced, my bot vanished and the zone crashed, so I'm guessing what's happening is that the spell list is not getting populated (although the entries are there in the npc_spells and npc_spells_entries tables for 701 - 712) which is why AI_IdleCastCheck is spinning non-stop.

Going to look more at this today and try to find where spells are loaded.
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 01:35 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