EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Bots (https://www.eqemulator.org/forums/forumdisplay.php?f=676)
-   -   EQoffline, bots and more.. (https://www.eqemulator.org/forums/showthread.php?t=22667)

Magoth78 08-21-2007 06:30 AM

Quote:

Originally Posted by drakelord (Post 137244)
Anyway, about the spellcasting, bots really do not cast often enough. I've seen healers go for 30 seconds to a minute without healing, when people need it. And casters do not nuke often enough. When I played as a Wizard on live, I definately casted more than once every 30 seconds, o.o; Not sure if it's supposed to be 30 seconds, but something is bugging it to be up around that point at times.

I didn't notice that at all. What can happen is when your bots don't have any LoS with their target, they don't cast. It's an issue that will be fixed very soon.

A new version (1.4) is incoming.

drakelord 08-21-2007 06:40 AM

But this happens when the mob is literally right in front of their faces, xD; Not trying to be a bitch or anything here, :]; *goes back to making spell lists*;

Arcsbane 08-22-2007 12:02 PM

I would first like to state how great the bots are, and what good work you are doing.

But, I am having issues with them. I have pretty much zero experience with C++ and SQL, and am kind of bumbling my way through. I tried compiling the Source and Build with eqemu build 992, but it failed every time on World, Zone, ppconvert, eqlaunch, and charmove. Pretty much the only one that would compile right for me was EMuShareMem. After getting frustrated, I simply copied the eqoffline files directly into my EQEmu server folder, and gave it a test run. The bots work great, but a lot of other things are buggy (which is expected, I suppose, since I couldn't compile the stuff), e.g. groups no longer work with other player characters (only with bots) and raid groups don't function at all, random crashes, and odd bot behavior. Is there a download of the compiled eqemu/eqoffline files somewhere that might work better than what I have going on since I cannot seem to compiled them into working order myself?

Magoth78 08-22-2007 06:12 PM

Arcsbane> You can find the latest version there: http://eqoffline.free.fr/Build.rar wich is almost updated every day theses times.

Be sure that you have modified your database:
http://eqoffline.free.fr/README.txt

The EQoffline Wiki entries made by John Adams:
http://www.eqemulator.net/wiki/wikka.php?wakka=Bots
http://www.eqemulator.net/wiki/wikka...a=BotsCommands

The nice tools to deal with your bots made by Georges:
http://www.eqemulator.net/forums/showthread.php?t=23205

sdabbs65 08-22-2007 10:52 PM

[QUOTE=Magoth78;137326]Arcsbane> You can find the latest version there: http://eqoffline.free.fr/Build.rar wich is almost updated every day theses times.



I tested perl last night on this version and the NPC's are not responding also it says it makes the bots but they never show up.
is there some different quest files to install or something ?

Yohkoh 08-22-2007 11:48 PM

Quote:

Originally Posted by Arcsbane (Post 137308)
I would first like to state how great the bots are, and what good work you are doing.

But, I am having issues with them. I have pretty much zero experience with C++ and SQL, and am kind of bumbling my way through. I tried compiling the Source and Build with eqemu build 992, but it failed every time on World, Zone, ppconvert, eqlaunch, and charmove. Pretty much the only one that would compile right for me was EMuShareMem. After getting frustrated, I simply copied the eqoffline files directly into my EQEmu server folder, and gave it a test run. The bots work great, but a lot of other things are buggy (which is expected, I suppose, since I couldn't compile the stuff), e.g. groups no longer work with other player characters (only with bots) and raid groups don't function at all, random crashes, and odd bot behavior. Is there a download of the compiled eqemu/eqoffline files somewhere that might work better than what I have going on since I cannot seem to compiled them into working order myself?

I was having the same issues. This link helped me.

sonicvt 08-23-2007 01:15 AM

Mag,

When I was telling a bot to join a raid group I had to add the three 0's onto the group leaders name to get the bot to join their group. For example, if I had added War_Jill as raid group 2 leader and wanted to add Cleric_Bessie to War_Jill's group I would have to type #bot raid invite group bot War_Jill000. At least that is what worked for me last night.

In addition the bot's I created at level 52 and then updated did not update their spells lists from their level 1 spells until i updated them and then zoned.

Magoth78 08-23-2007 01:46 AM

sonicvt> Adding the zeros at the end of the name is a normal thing because the name of the bot is the name of its entity.

Concerning the update, are you using the last version ?
#bot update has been fixed recently so you don't have to zone anymore to get the new spells.

Mag

sonicvt 08-23-2007 09:02 AM

Mag,

I'm using the version linked off of your EQOffline webpage which currently says version 1.03c.

Yohkoh 08-24-2007 12:17 AM

Quote:

Originally Posted by Magoth78 (Post 137082)
Updates: v1.03d

http://eqoffline.free.fr/Build.rar

-- new command added "#bot debug spells <target>" : it will show the 16 spells loaded in the bot spells list.
-- the command "#bot inventory remove <slotID>" should now remove the item from the target bot inventory. This item pops on the client's cursor. This way, he can gives it to an other bot.

Drakelord>
If you want to create the npc_spells_entries with the same spells per level as clients, you have to create a new entrie per class into the npc_spells table.
For example: Bot_Druid with an ID that will be autoincremented.

Then, you have to enter the full spell line into the npc_spells_entries table.
In this one, you can see the column :
- id: unique id per entrie
- npc_spells_id: that will be the ID of you Bot_Druid ID (in the npc_spells table)
- spellid: ID of the spell
- type: type of the spell (1= nuke, 2=heal, 4=root, 8=buff, 16=escape, 32=pet, 64=lifetap, 128=snare, 256=dot)
- minlevel and maxlevel: level range where the spell will be casted. (maxlevel can be set to 255 for some spells that are always usefull like resist spells)
- manacost: -1 by default
- recast_delay= -1 by default
- priority: if you plan to make this table so the bot have exactly the same spells as clients with the right levels range, you can set it to 1.

Note that a bot can have a maximum of 16 spells in its spells list. Some casters don't have 16 spells per new spell level range. In this case, you will have to deal with level range so it can learn some of the previous spells.

For example, we have a level 8 mage bot.
In the npc_spells_entries table you have added the level 8-12 mage spells. But it doesn't have 16 spells to learn in this range. Let's say 6 slots are free, you want that you bot can learn some of the lvl4-8 spells to complete thoses free slots. You would have to set a higher maxlevel for thoses spells.

My english seems to suck a lot and I'm sorry about that. I hope that I've explained correctly how it works...

Mag

What happened to version v1.03d? I down loaded the binaries the day you posted it. Yesterday I compiled the latest from the Web site and I noticed differences. Like when the bot's buff in the version I compiled, everyone in the group get buff at the same time instead one at a time (NICE). But when I do a trade with a bot I get disconnected from the server and have to re-log.

sonicvt 08-24-2007 12:53 AM

Mag,

I got the bot raid commands working but they are very tedious even with hotkeys as they require you to target yourself for some of them and type the raid group leaders name for others.

Is there any way that the bot attack, follow and guard commands that are used for the single group orientation could be applied to ALL the raid groups as well. The more specific raid commands would still work and override the simple bot group commands but I find it pain to have to target each raid group leader and make them attack my raid target, especially if there is only one such target (Nagfen or Vox), or follow me when I'm worried about repops. Thanks!

Magoth78 08-24-2007 02:54 AM

To give order to your raid, you have to make macros.

Concerning version, the actual one is 1.3e. ( http://eqoffline.free.fr/Build.rar )
The last final version of eqoffline will be 1.4 and I have a good number of bugs to resolve before I release it. That will take some time..

ShadowVax 08-24-2007 09:13 PM

im a true noob :(
 
I've read all the pages of this thread and it really looks like a great addition to the Eqemu. Problem is im a true noob to this. I've installed off of the server pack 3.6 and I've put your binaries into my EqEmu folder. Now my only problem is I dont fully understand how to add the new Tables into mysql. I usually dont even have MySql running when i launch my server. I just play Emulator for something to do when im bored of EQ Live and/or Beta. These bots would help keep things interesting. I currently Use MySqlCC and Navicat to edit the tables but im clueless as to adding tables and what not to make these bots work. A good step by step tutorial on your website would be excellent or someone who is able to help me would be greatly Appreciated. Thanks in advacne :grin:

-ShadowVax

ShadowVax 08-25-2007 12:59 AM

as an update. I managed to figure out how to add those tables added but the end part of those wouldnt go through.

ENGINE=InnoDB DEFAULT CHARSET=latin1; wouldnt go through on my query so Im guessing that might be my problem with not being able to get any bots at all ive tried combos of the zone and world exe's and nothing seems to work. even when i do #bot help it says that ocmmand is not recognized. I also havent figured out how to source that spell_routine file on your site yet. I've been looking all night and havent really figured it out. Most of the wiki's dont seem to be working on the main site. Any help would be greatly appreciated =)

-ShadowVax

drakelord 08-25-2007 01:46 AM

Server Pack 3.6 is a bit outdated. It uses MySQL 4.x, while I believe EQOffline uses 5.x. At least that's what I use. Also, get the latest database from the PEQ-CVS or something related.

EDIT: Also, make sure you are using WorldDebug.exe instead of world and ZoneDebugPerl.exe instead of Zone.exe

ShadowVax 08-25-2007 06:23 PM

weird problem
 
alright i managed to get everything installed correctly. I made my bots. I had 4 zonedebugperl's running so that i have a little cushion when i zone. i went to bastion of thunder, and numerous other zones. Spawn my bots, add them to group. Let them buff and med. Pull a mob. And as soon as bots start to attack mob. Zone crashes. Is there a fix to this or am i just doing somethin wrong?

-ShadowVax

sonicvt 08-26-2007 01:52 PM

Mag,

When raiding with the bots if the leader of a raid group (not raid leader obviously) dies the bots in its' group no longer respond to commands, I'm guessing since the raid commands require you to call out the raid group leaders name.

Is there any way that if the leader of a raid group dies the 2nd bot in the group becomes the leader? When I tried to remove the bots from the raid group without a leader the game would sometimes crash.

rayman121985 08-26-2007 02:49 PM

Its probably been said already...but have yall made this to work with the eqemu repack....if so let me know...I am not that smart in this area of programming but if I can drop it into the folder and follow some simple steps I am sure I could get it working! It would be great to have some bots to help me on my offline server...

thanks mates,

::rayman::

Yohkoh 08-27-2007 12:01 AM

Quote:

Originally Posted by Magoth78 (Post 137390)
To give order to your raid, you have to make macros.

Concerning version, the actual one is 1.3e. ( http://eqoffline.free.fr/Build.rar )
The last final version of eqoffline will be 1.4 and I have a good number of bugs to resolve before I release it. That will take some time..

Is the Source up to date? When I compile the latest source from the Web Site, I get a Zone disconnect when I do a trade. Comparing the downloaded binaries with the compiled source code, It fails after the bot is updated with the new weapon and never gets to where the bot says 'Thank you for this item, leader.'

Magoth78 08-27-2007 12:15 AM

Yohkoh> The sources are not up-to-date, only the binaries are.

sonicvt> Yes, I've noticed that also. I will make it so if the group leader dies, an other grouped bot will become the group's leader. Then you will do "#bot raid info" to show who it is.

sonicvt 08-27-2007 02:03 PM

Mag,

When I tell a bot to remove an inventory slot but don't have one targeted it kills EQEmu. Is this something fixable on your end or just something that it part of the game? Thanks.

Wanderin 08-27-2007 02:37 PM

Got my bots up and running with only a few snags so far. Made a lvl 51 human(male) monk bot and gave him the monk epic 1.0 fistwraps, soon as he would engage in combat the zone would crash. Then i made a 51 barbarian(female) beserker and tried to give her various 2hs weapons including the epic 1.0 and the bot would just eat them saying she couldnt use. Im running a Emu ver of 992 with the latest peq database and the current downloads from your website for the bots, did i miss something or are these just a few bugs to be worked on :)

aneriel 08-28-2007 05:24 AM

Would like to post a few things on this as I've spent days banging my head.

First, regarding the readme.txt that tells you to delete your npc_spells_entries table. never ever do this. When working with databases it can be very easy to overlook something and can cause major headaches while you spend hours trying to figure out why something doesn't work. Always rename the table before making any changes (you wouldn't just overwrite a file without backing it up first would you?). Even if it's something as simple as adding one column. It's much easier to look at your tables and know what is what:
npc_spell_entries_bots
npc_spell_entries_prebots

npc_types_bots
npc_types_prebots
etc, etc

Now I have a working table of both versions. I work with databases on a regular basis, so I knew to do this before-hand.

With that said, ever since I installed BOTs on my server I've been experiencing random disconnects (doing GM commands brings my zones down) and cannot group with other players. So I decided to roll back to pre-bots days. Now if I wouldn't have done what I stated above, I would be resourcing my database to get my npc_spell_types back. To source in my DB the first time took over 4 hours (don't ask why). This would have sucked. At any rate, I just want those out there not to have to do this if it can be easily avoided

Though that's not what I banged my head over, the issue I started having (after copying my orginal world.exe, zone.exe, and that dll back over) was that the zone would launch and then close right back down. I tried a different combination of things and in the end all i needed to do was the

mysql > set password for 'root'@'localhost' = old_password('newpw');

command. just wanted to give everyone a heads up.

drakelord 08-28-2007 07:14 AM

It's weird that I don't get any of these problems mentioned above, :\

aneriel 08-28-2007 08:29 AM

i don't have the time to find it again, but I figured out that the BOTs were causing all my woes from this thread. It's in the last 7-8 pages i know. So I guess it doesn't happen very often, but when it does it can be very frustrating. Just sucks I can't use BOTs now, I was using the crap out of them in befallen.

Now this goes to say that I didn't fully test this as I didn't have the time. What I would like to have done is install a fresh copy of bots, try out everything to see if it still works (GM commands, grouping with PCs). If so, then go on to create a bot, test again, give bots weapons, test again, etc, etc. Someone was logged on one night creating a lot of BOTs, this too could have caused some issues. So just because you don't have these troubles, doesn't mean they aren't there. You just may not have completed the correct step to spawn these issues. At any rate, i'll give them another go when I get some time to see if it's just my setup, or something did go wrong after a certain combination.

Magoth78 08-28-2007 10:36 AM

aneriel> I'm sorry but:
I'm not a professionnal programmer,
I'm not a professionnal DB admin,
I'm not an computer specialist.

I do that for free and it was supposed to be EQoffline. Offline also meant a single player version. I've never wanted to make this project so you can have a live eqemu server with a lot of peeps creating bots.
Now, if it's too buggy for you then don't use it.

What I can say is that two friends and me are playing on the server EQoffline dev 1.02 (wich is 1.03e in fact). We leveleved legitly from 1 to 60 and we're still playing. I've fixed almost all the bugs we've found. Some bugs are left and they are all writed on a paper. I will work on them when i will have the time.
It's very playable though.

aneriel 08-28-2007 02:16 PM

Hey mag, sorry if i came off as complaining about eqoffline. That wasn't my intentions. I was merely posting what happened to me so if someone else experiences it, they will be able to find some help in the forums. like I said, i only noticed that one post about some guy having the same issues as me, so it's very rare. I spent hours searching these forums (Tho to be honest, this post kept coming up as top on the list, I just didn't think it had anything to do with it.). I finally just got to the point where I had to post a question about some of my issues
http://www.eqemulator.net/forums/sho...563#post137563


i love eqoffline. i used the hell out of it. and to be honest I don't remember having any problems with it at first. Something else happened to trigger all my hishaps.

Soulscry 08-28-2007 04:31 PM

Stuff
 
First off... I love the bots... after alil trial and error on my part i managed to get them going and do alil leveling... I can do groups and raids .. update the bots to get there new spells n stuff ... 2 questions though.

1: Is Update supposed to level up my bots to my level? cuz I still have to kill them and respawn them to get them to level up...

2: For some reason i cant get the bots to keep there gear... Dieing, me logging, zoneing, me #kill ing them ... if for any reason i despawn them they lose all there gear ... i tried #bot update ing them but to no avail ... im sure its some simple mistake that only i dont understand lol ... but yet here i am .. with my level 5 naked bot warrior trying to tank for me =/ ...

anyway .. thanks again for all the hard work... This is a dream come true for me ... I couldnt play eq much anymore for lack of time needed to get raids togeather or even groups... with the Bot-armada I can play in my free time and still do the things i enjoy ... Your my hero =) ... Cheers!

Magoth78 08-29-2007 12:23 AM

Soulcry>

1) When you do a "#bot update", their level become the same as your. Don't worry about them staying blue, I just don't update their consider color.

2) When you do a "#bot inventory list" on your bots, what do you see ? Is the botinventory table created in your database as mentionned on the README (http://eqoffline.free.fr/README.txt) ?

Soulscry 08-29-2007 06:18 AM

The Bot Inventory sql that came with peq is what i have .... sence cavedude already had it in i didnt mess with it ... do i need to change it?

Botinventory
SQL file
2kb



-- MySQL dump 10.11
--
-- Host: localhost Database: PEQ_CVS
-- ------------------------------------------------------
-- Server version 5.0.38-Ubuntu_0ubuntu1-log

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `botinventory`
--

DROP TABLE IF EXISTS `botinventory`;
CREATE TABLE `botinventory` (
`npctypeid` int(11) NOT NULL default '0',
`botslotid` int(11) default NULL,
`itemid` int(11) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `botinventory`
--

LOCK TABLES `botinventory` WRITE;
/*!40000 ALTER TABLE `botinventory` DISABLE KEYS */;
/*!40000 ALTER TABLE `botinventory` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2007-07-27 20:48:25

Soulscry 08-29-2007 06:37 AM

hope this helps =)
 
The #bot inventory list says all the bots slots are empty ... even after i give them an item ... and the item is showing on the bot ... ( armor on and sword in hand )...

http://i238.photobucket.com/albums/f...h_EQ000007.jpg

cavedude 08-29-2007 06:58 AM

I just realized there was an error in the load_player.sql script. Source in botinventory.sql manually and I'd bet it will work for you.

sonicvt 08-29-2007 07:30 AM

Soulscry,

I routinely update the peq_db (drop_system.sql and load_system.sql) and when it do so it kills the bot names and classes for the bot but keeps the bot inventory lists (as an aside, when it drops the name and class for the bot it is a great time when you re-#bot create them to choose new classes and names if the ones you used before aren't suiting your purposes instead of just making more bots that jack up the number of bots you have) I've never had the bots not keep their inventory items before though. I know when I give the bots new items it won't show the new appearance for the item (e.g. breastplate or weapon) until I respawn and group them.

Mag,

I noticed that if I do #bot attack and I myself don't engage in combat that the mob won't be agroed on me (won't get faction hits, won't attack me if the 5 bots wipe). I'm not sure if this was intended but it was just something I noticed while searching for named in zomes I'm not KOS in, for example Chardok.

Also, if you are agroed your bots go into auto attack mode but if you are in a raid only the bots in your group do this. Is this intentional or should the other raid groups also auto agro on the mob that agroed you?

Thanks and great work.

Soulscry 08-29-2007 04:26 PM

1/2way there
 
I sourced in the Botinventory sql file with cmd promp smysql... load up eqemu server and fire up eq client... log in .. spawn a bot .. equip it and kill it... respawn .. gear stayed ... woot woot ... but in combat i randomly crash now... happened 3 times in 20 min ... not sure exacly what caused it ... im thinking once was when i lost LoS with the mob... once happend when i turned off auto attack mid fight ... and once when i was backing away from a mob so the bottank could taunt/ hold aggro away from me.... this is the Worlddebug.exe cmd lines of the errors when i crash... any ideas would be great ... thanks guys =)

http://i238.photobucket.com/albums/f...cry/th_111.jpg

Magoth78 08-30-2007 10:26 AM

You can download the latest version (1.03f) : http://eqoffline.free.fr/Build.rar

Shouldn't crash anymore when using a weapon that have a lesser delay than the dmg.
Reworked damage formulas.
Fixed random crashes on deaths.

sonicvt 08-31-2007 09:25 AM

Mag,

It doesn't appear that frogloks OR berzerker bots will accept armor or weapons of any type. Everytime I try to give them something they say they can't use it.

Also, beastlord bots don't attack, they sit around and cast like mages do but without decent spellpower to back it up. They also don't buff their pet with the spells they have memorized so they don't do much damage at all.

Soulscry 08-31-2007 08:26 PM

Woot
 
Thanks a ton Magoth and cavedude ... got er up n running perfict now ... you guys rockzor!!!!

Im currently lvling n gearing up my bot army ..

Thanks for all the hard work on this... Magoth... You are indeed .. The Man~!

gernblan 09-01-2007 09:34 PM

Quote:

Originally Posted by cavedude (Post 132730)
This is an excellent project, and I can even see a very good use for it in the normal EQ code. One of the biggest problems PEQ has is the players have to multi box to get to the higher content (some players multi box 6 clients at once... how they do it is my question) This code could help with that problem a bit. I have a couple of questions though.

1. Could you tie this system into the rules system so the server op can control how many bots a player can have at once? By level (1-15, 16-35, 36-55, 56-75, just examples) would be wonderful.

2. Could you diff your changes so they can be integrated into the ever changing EQEmu code easily?

Great work, I am impressed with how fast this project became a reality.

I could not agree more, and I believe that this is TOO good not to be folded into the regular emu source as an optional feature on live servers.

Magoth78 09-02-2007 07:09 AM

Thanks.

In the actual state, it would be really difficult to plug the eqoffline code into the last emu sources because of all the changes. And my code isn't clear.

That's why I'm actually rewriting everything related to bots, based on the last official emu sources. I want to make it a "separate" project that you just could add or not into the official sources easily, just like the Guildwars code.
That's not very hard to do but it takes a lot of time as a lot of functions need to be customized for bots.

Mag

John Adams 09-02-2007 02:17 PM

Meh, not to blow my own horn, but I am not a c++ coder and I got the bots working in 1031 (I think) with little effort, just hours of time comparing things with windiff. =)

You never did get back to me that my port worked to your standards, but I understand you are re-writing anyway - so that's why I hadn't bothered you with it. I am very anxious to use Bots in a multi-player custom server. Hopefully that's the direction this is going.


All times are GMT -4. The time now is 08:04 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.