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

Development::Bots Forum for bots.

Closed Thread
 
Thread Tools Display Modes
  #1  
Old 03-19-2008, 06:29 PM
burnme
Fire Beetle
 
Join Date: Dec 2007
Posts: 3
Default

So is anyone planning on or finished cranking out an improved or *gasp* complete npc_spells_entries list for the rest of us to use?

Or should I go ahead and do it myself?
  #2  
Old 03-20-2008, 01:22 AM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

I've done it for the Cleric but haven't had time for the other classes. Feel free to contribute. Remember, these entries affect all npc casters, not just bots.
  #3  
Old 03-20-2008, 10:32 AM
Haven21
Fire Beetle
 
Join Date: Mar 2008
Posts: 6
Default

I've been messing around with trying to create custom spell sets for my bots and so far all of them work great except for shaman. Whenever i create a custom spell set for that class and change the bot to use that list it defaults on the spell list, i have to use #ai spellslist # to get it to use the custom list. I'm fairly certain i'm not doing anything wrong since I've gotten other classes to work so if someone could look into this that would be great!
  #4  
Old 03-20-2008, 03:14 PM
Aramid
Discordant
 
Join Date: May 2006
Posts: 356
Default

I started making Custom Spell lists but did not use the normal entries, instead added the id's in the 600's. The ones that I put to use those seem to work fine, but as you say, I haven't done the Shaman's yet, but have set the original ones as they should be by the minimum and maximum levels and I still have to use the #ai spellslist 6 to get the Shaman to load the higher level spells instead of the lower levels that he shouldn't even be loading. Once I get them all done, I'll edit the code in command.cpp where it assigns the spell lists to my 600's.

I'm going to try to get the time to setup the Shaman list tomorrow in the 600's and see if it loads them properly or not.

Also, the ones with pets seem to load that spell twice... Does that happen for anyone else?
__________________
Random Segments of Code....
  #5  
Old 03-20-2008, 05:24 PM
Haven
Fire Beetle
 
Join Date: May 2006
Posts: 1
Default

Thanks Aramid, i did notice with the wizard spell greater familiar (i think it was this spell) that when it was cast the wizard bot summoned a greater familiar for both the bot and myself and the familiar also summoned its own familiar. I ended up with X's familiar and X's familiar's familiar lol

Edit: bah used my alternate account to post this /sigh
  #6  
Old 03-21-2008, 05:45 AM
Aramid
Discordant
 
Join Date: May 2006
Posts: 356
Default

OK, just found out something I didn't know before nd maybe the coders can figure out why it's happening. I tested this with a Shaman, Wizard, Enchanter, Druid and Necro.

All except the Wizard will load there Default Pet XXXX, where XXXX = Class Spells instead of there own spells.

See if this is what is happening to you as well. Spawn your Bot and before grouping or anything, target it and issue the #showstats command. You will see that it has loaded spellslists in the 500's. They don't have a pet spawned at this time either, as they aren't even grouped yet. Funny thing too, my Wizard doesn't spawn a pet (Familiar) at all even though it has the spell and has the correct list loaded.

My Cleric seems to always load the spells I setup for it.
With the Shaman, I created a short list in the 606 slot and it did not load those spells until I used the #ai command. It loaded it's default pet spells. Yes I set it up to use that spellist in the db

Hope someone can figure out why.
__________________
Random Segments of Code....
  #7  
Old 03-21-2008, 08:47 AM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

The peq database has default spell lists for all caster classes in npc_spells table starting at id 1 and going through id 12 with names "Default <class> List"
Also in the database are separate entries id 514-524 with names "Default Pet <class> List"

I don't know the reason for needing both, but the bots that can cast pets are hard coded to use the 514-524 list AND the Wizard code is rem'd out.

Maybe Cavedude can shed some light on the multiple default entries as the pet classes would never need the default entries in favor or the default pet entries. It seems the bot code uses the 'Pet' version for pet classes, so any custimization you do should use the higher range unless we hear some reason not to. (We should probably make a 'Default Bot' list, what id range should we use?).

Since the wizard bot code is not changing to the Default Pet entry it is instead using the Default entry. The default entry does not have any pet spells in the list.
  #8  
Old 03-21-2008, 09:02 AM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

Quote:
Originally Posted by Haven View Post
Thanks Aramid, i did notice with the wizard spell greater familiar (i think it was this spell) that when it was cast the wizard bot summoned a greater familiar for both the bot and myself and the familiar also summoned its own familiar. I ended up with X's familiar and X's familiar's familiar lol

Edit: bah used my alternate account to post this /sigh
When customizing the database list, make sure you put the familiars spell as SpellType_Pet. If you put it as SpellType_Buff it will cast it on everyone in the group.

SpellType_Nuke=1;
SpellType_Heal=2;
SpellType_Root=4;
SpellType_Buff=8;
SpellType_Escape=16;
SpellType_Pet=32;
SpellType_Lifetap=64;
SpellType_Snare=128;
SpellType_DOT=256;
  #9  
Old 03-21-2008, 11:08 AM
cavedude's Avatar
cavedude
The PEQ Dude
 
Join Date: Apr 2003
Location: -
Posts: 1,988
Default

It was Angelox's implementation and works quite well. Not every NPC has a pet, so by default we give NPCs the spell list without pets. When we come to an exception, we give them the list with a pet. Simple, really.

Though for bots I would agree with creating new sets cleric_bot or the like and changing the code to automatically use them would be the best way to go. Starting at 600 would be fine by me and I'd have no problem adding it to PEQ.
  #10  
Old 03-23-2008, 01:42 AM
Haven21
Fire Beetle
 
Join Date: Mar 2008
Posts: 6
Default

Quote:
Originally Posted by Congdar View Post
When customizing the database list, make sure you put the familiars spell as SpellType_Pet. If you put it as SpellType_Buff it will cast it on everyone in the group.

SpellType_Nuke=1;
SpellType_Heal=2;
SpellType_Root=4;
SpellType_Buff=8;
SpellType_Escape=16;
SpellType_Pet=32;
SpellType_Lifetap=64;
SpellType_Snare=128;
SpellType_DOT=256;
Ah ok that explains why that is happening, Thanks Congdar!
  #11  
Old 03-22-2008, 11:01 PM
Arex
Hill Giant
 
Join Date: Jul 2004
Posts: 196
Default

Nice work on bots!! I only would like to suggest extend the range of bots to his owner, because they get so near that it is a bit disturbed. Would be a big problem to do it?
  #12  
Old 03-24-2008, 08:12 AM
Arex
Hill Giant
 
Join Date: Jul 2004
Posts: 196
Default

Hey guys, i was asking me, why u dont use the 100 first positions of npc_types table for bots?? Then u havent problems when new mobs are added to database
  #13  
Old 03-24-2008, 10:23 AM
cavedude's Avatar
cavedude
The PEQ Dude
 
Join Date: Apr 2003
Location: -
Posts: 1,988
Default

They are reserved by the client so we can't use them without causing problems. But, as I said there is no problem with IDs. PEQ will never ever use the IDs bots are given. Your going to have to drop and then resource your bots everytime you upgrade anyway, since the upgrade wipes the whole npc_types table away and loads it fresh.
  #14  
Old 03-28-2008, 10:34 PM
Arex
Hill Giant
 
Join Date: Jul 2004
Posts: 196
Default

ok, thank you for the information cavedude.

In other point, i would like to know if it is posible remove "(BOT)" messagge that appear under name of bots, and the "000" that appear after bot's name in group windows.

any advancement in AI spell list?? It is only that my ench bots look so retarded... :P
  #15  
Old 03-29-2008, 03:00 AM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

You can remove (Bot) by deleting 'Bot' from the lastname field in npc_types table. Something like:
Code:
UPDATE peq.npc_types SET lastname='' where isbot=1;
lastname is equal to two single quotes.


Can't do anything about the 000's
Closed Thread

Thread Tools
Display Modes

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