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

Development::Bots Forum for bots.

Reply
 
Thread Tools Display Modes
  #16  
Old 01-07-2010, 03:10 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Well it will take me a few days to duplicate the problem. I will have to wipe a computer and load it, I do not want to mess with the live server. The new EqEmu needs Debian 5, mine is running Debian 4.

I can tell you this that I do remember. It happened while in an instance. I sent my pet to attack, the pet got really far down and I have no idea what the bots were healing at the time. I had to bail from the instance because fear of dying....

I zoned back into Fay and the bots were out of mana, they were healing the enchanter pet that was at 100%.

I have no problem getting you particulars especially if you can work on it. I really want my server on newer Debian but i need the emulator at 100 percent before I can do that. Give me a few days, maybe this weekend and I will start a VM with it or something.
Reply With Quote
  #17  
Old 01-09-2010, 09:47 PM
prickle
Hill Giant
 
Join Date: Sep 2009
Posts: 147
Default

The healing bug was definitely happening in Rev1052. I've not tried it with the most recent Rev's yet, because I've just returned from vacation...
Reply With Quote
  #18  
Old 01-10-2010, 12:57 AM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Well maybe I can help you out and let you know how it goes. So far so good, Debian 5 loaded....compiling is going okay. Just running all of these patches....I never seem to get it right.
Reply With Quote
  #19  
Old 01-10-2010, 01:17 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Okay I am back to the pointer error.

[Debug] Member of group 1001 named 'Provocating' had an out of date pointer!!
[Debug] Member of group 1001 named 'Wundred' had an out of date pointer!!

I went back through my notes and I have no idea how I solved it last time.

This is what is working and what is not.

WORKING
Bots have inventory.
All bots converted over from old system.
Bots are now zoning.

NOT WORKING
Bots do not follow after zoning, noticed an out of date pointer error during zone.
Cannot create any new bots, always says the name is in use.

Patches I recently went back through to make sure they are there.

1022_botadventuring.sql
1027_botactives.sql
1030_botzoningsupport.sql
1036_botbuffs.sql
1038_botpetstatepersists.sql
1040_DeprecatedBotRaidsSystems.sql
1077_botgroups.sql still not following
Reply With Quote
  #20  
Old 01-10-2010, 01:42 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Also I wanted to add I am using r1086 of the source.

I just compiled and added my -DBOTS and bots.o to the makefile / makefile.common and recompiled, all went well but still the bots are not following, cannot create new bots and the out of date pointer error.
Reply With Quote
  #21  
Old 01-10-2010, 02:08 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Well I thought I had it fixed, false call.....still broken.
Reply With Quote
  #22  
Old 01-10-2010, 02:44 PM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

The issue with getting the 'Bot name is already in use' message may be a case sensitivity thing on Linux.

The query that is being used to check if the name is available is:
Code:
SELECT COUNT(id) FROM vwbotcharactermobs WHERE name LIKE '%s'
But the view name is actually mixed case:
Code:
CREATE VIEW `vwBotCharacterMobs` AS ...
You could try changing the query on line 928 in bot.cpp to:
Code:
SELECT COUNT(id) FROM vwBotCharacterMobs WHERE name LIKE '%s'
and recompiling.
Reply With Quote
  #23  
Old 01-10-2010, 02:53 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Thank god that part is over. You are a master at your craft.

Anyone have an idea on the bot following thing ? I can call it a day and maybe even be able to squeeze in play time tonight if I can get this fixed.
Reply With Quote
  #24  
Old 01-10-2010, 02:53 PM
WildcardX
Developer
 
Join Date: Apr 2003
Posts: 589
Default

Derision is correct. I just tried that query under the same version of MySQL but with one running on a windows server and the other on a linux server and to my surprise, the query works fine for MySQL running on Windows, but fails on MySQL running on linux. Looks like I get to look at all the queries now to make sure the case sensitivity matches to the actual SQL create statements.
__________________
Read my developer notes at my blog.

Quote:
If it's not on IRC, it ain't l33t!
Reply With Quote
  #25  
Old 01-10-2010, 02:54 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

Yeah it fixed my problem too.

Any idea on the bots following thing ?
Reply With Quote
  #26  
Old 01-10-2010, 03:24 PM
prickle
Hill Giant
 
Join Date: Sep 2009
Posts: 147
Default

Quote:
Originally Posted by provocating View Post
Also I wanted to add I am using r1086 of the source.

I just compiled and added my -DBOTS and bots.o to the makefile / makefile.common and recompiled, all went well but still the bots are not following, cannot create new bots and the out of date pointer error.
Did you also add -DBOTS to your world/makefile file as well?

Sounds like you've got all the necessary sql patches in, but you're bots aren't cooperating properly.

Here are a couple of things that I had to do to get mine working:

.add -DBOTS to BOTH the world/makefile AND the zone/makefile
.add bots.o to zone/makefile.common
.remove the "-g" and "-O" flags from BOTH the world/makefile and the zone/makefile

hope this helps
Reply With Quote
  #27  
Old 01-10-2010, 03:26 PM
WildcardX
Developer
 
Join Date: Apr 2003
Posts: 589
Default

I checked all the other bot queries and this one case appears to be the only query that needs to be changed to be case sensitive to its database object. I'll commit this fix later when I am ready to commit some other code I am working on now.
__________________
Read my developer notes at my blog.

Quote:
If it's not on IRC, it ain't l33t!
Reply With Quote
  #28  
Old 01-10-2010, 03:38 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

World makefile section

Code:
DFLAGS=-DDEBUG=5 -DBOTS -DEQDEBUG=5 -DSHAREMEM -DCATCH_CRASH -DNO_PIDLOG -DFIELD_ITEMS -DIRC -Di386 -DAPP_OPCODE_SIZE=2
Zone makefile section

Code:
DFLAGS=-DEQDEBUG=5 -DBOTS -DCATCH_CRASH -DNO_PIDLOG -DSHAREMEM -DFIELD_ITEMS -DCOMBINED -DAPP_OPCODE_SIZE=2 -Di386
#
Zone makefile.common - Note I think you mean bot.o, not bots.o

Code:
 ../common/guild_base.o bot.o \^M
On this part

.remove the "-g" and "-O" flags from BOTH the world/makefile and the zone/makefile

I had never done that before, but I tried it and it did not make any difference. The bots still hang around the entrance of the zone like a bunch of State workers.
Reply With Quote
  #29  
Old 01-10-2010, 03:58 PM
prickle
Hill Giant
 
Join Date: Sep 2009
Posts: 147
Default

ok... hmmm... a lot has changed in the sources since this thread was originally posted...

Let me see if I have everything straight...

DOES WORK:
-Rev1052 Windows Binaries W/ NEW database
-Rev1086 Linux SVN compile W/ NEW database

DOES NOT WORK:
-Rev1052 Windows Binaries W/ OLD database that's been patched
-Rev 1086 Linux SVN compile W/ OLD database that's been patched

Is this correct?
Reply With Quote
  #30  
Old 01-10-2010, 04:00 PM
provocating's Avatar
provocating
Demi-God
 
Join Date: Nov 2007
Posts: 2,175
Default

That was too long ago for me to remember. I am pretty confident though this is a database problem. The binaries seem to not matter on this issue.

What are you patched up to, what revision ?
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 03:36 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 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3