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

Development::Bots Forum for bots.

Closed Thread
 
Thread Tools Display Modes
  #1  
Old 07-06-2007, 09:12 AM
Magoth78
Discordant
 
Join Date: Jun 2003
Posts: 345
Default

Hello,

I've started to work on the raids.

The raid related commands are:

#bot raid help - will show this help
#bot raid create - will create your raid (you will be the raid leader)
#bot raid group create [target] - create a group in order to make it joining your raid (your target will be the leader, basically a bot).
#bot raid invite bot [target] [group: 1/2/3/4] - Invite your target into the group [1/2/3/4]
#bot raid link group [target group] - Add target's group into your raid.
#bot raid remove [target's group] - Remove target's group from your raid.
#bot raid disband - Disband the raid.
#bot raid order maintank [target] - Your target will be flagged as the main tank.
#bot raid order secondtank [target] - Your target will be flagged as the second tank.
#bot raid order maintarget [target] - Your target will be flagged as the main raid's target.
#bot raid order secondtarget [target] - Your target will be flagged as the second raid's target.
#bot raid order grouptarget [group: 2/3/4] [target] - Your target will be flagged as the target of the group [2/3/4].
#bot raid order task [attack/guard] [group: 2/3/4] - You will give a specific task [attack/guard] to a specific group [group 2/3/4].
#bot raid order task [follow/assist] [group: 2/3/4] [group: 1/2/3/4] - Give a task [follow/assist] an other group.

How will that work:

Once you've created your group, you are able to create a raid.
1/ You use "#bot raid create". You become the raid leader and your group is the first group of the raid.
2/ You need to create others groups (A raid = 4 groups max). To do that, you need to target a bot wich isn't already grouped and use the command "#bot raid group create". He will become the leader of its group.
3/ You can add a member to the groups 2/3/4 by using the command "#bot raid invite bot [target] [group: 2/3/4]"
4/ You need to link the group to the raid with the command "#bot raid link group" while targetting a member of the group that you want to link.
5/ And finally you can flag the raid's tanks, assign the raid's target(s) (to the raid or to each group of the raid), give particular tasks to each group, etc... with the "#bot raid order" commands.


All the commands and the functions are coded. Now, I have to do some testing and I have to modify the bot's AI.

Good day,
Mag
__________________
User's projects:
-- Original EMPIRE I/II and Factions! servers
-- Web GM Portal
-- EQoffline/bots
  #2  
Old 07-07-2007, 05:34 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

Very exciting! I still wish I could get mine to compile. ~cries~

I wasn't going to trouble you with my error, but it seems catastrophic. I am not sure how I managed this...
Code:
/home/eqemu/build/EQEmu-EQOffline/zone/npc.cpp:563: undefined reference to `Mob::BOT_Process()'
npc.o(.text+0xa0d):/home/eqemu/build/EQEmu-EQOffline/zone/npc.cpp:565: undefined reference to `Mob::PET_Process()'
npc.o(.gnu.linkonce.r._ZTV3NPC[vtable for NPC]+0x16c): undefined reference to `NPC::Bot_AI_IdleCastCheck()'
npc.o(.gnu.linkonce.r._ZTV3NPC[vtable for NPC]+0x170): undefined reference to `NPC::Bot_AI_EngagedCastCheck()'
pets.o(.gnu.linkonce.r._ZTV3Pet[vtable for Pet]+0x16c): undefined reference to `NPC::Bot_AI_IdleCastCheck()'
pets.o(.gnu.linkonce.r._ZTV3Pet[vtable for Pet]+0x170): undefined reference to `NPC::Bot_AI_EngagedCastCheck()'
horse.o(.gnu.linkonce.r._ZTV5Horse[vtable for Horse]+0x16c): undefined reference to `NPC::Bot_AI_IdleCastCheck()'
horse.o(.gnu.linkonce.r._ZTV5Horse[vtable for Horse]+0x170): undefined reference to `NPC::Bot_AI_EngagedCastCheck()'
collect2: ld returned 1 exit status
make[1]: *** [zone] Error 1
This is the latest links from your site, clean tar extract, and I don't think I changed anything in the makefiles this time (like removing eqcollector or whatever). Compiling on Linux FC4, so it's older... mysql 4.1, etc.

Any clues? I had it compiled once before on Linux, but could never log in. Now, I cannot even get it to make. :(
  #3  
Old 07-07-2007, 06:34 AM
Magoth78
Discordant
 
Join Date: Jun 2003
Posts: 345
Default

You need to add BotAI.cpp, BotAI.h, PetAI.cpp and PetAI.h to your Makefile.
__________________
User's projects:
-- Original EMPIRE I/II and Factions! servers
-- Web GM Portal
-- EQoffline/bots
  #4  
Old 07-07-2007, 04:46 PM
Magoth78
Discordant
 
Join Date: Jun 2003
Posts: 345
Default

Update:

-- Bots/pets's assists totally reworked.
-- Fixed the random crashes when a bot died. (should be ok now)
-- Rewrited all the things related to groups (I think you can now have 2 differents clients in a group with bots - need more tests though).

-- And very important... Raid is almost finished!
You can create your raid, create other groups, adding bots to the other groups, setting raid main tank, second tank, main target, second target, targets to be mezz'd, etc...
I've tested the raid thing against Trakanon and it worked perfectly. All the healers healed the main tank in priority. it this one died, they could have healed the second tank. Everything worked fine till I took too much aggro on Trakky and died pretty quickly :P as you can notice... the bot did their job, the only human on the server sucked and caused the raid to wipe... so common

The next days, I will finalize all the functions related to raid then I will make a video to show how fun it is.
And finally, the final task will be to make bot doing the melee damage depending of the weaps they have, that will make the game more realistic.

G'day,
Mag
__________________
User's projects:
-- Original EMPIRE I/II and Factions! servers
-- Web GM Portal
-- EQoffline/bots
  #5  
Old 07-07-2007, 05:10 PM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

Quote:
Originally Posted by Magoth78 View Post
You need to add BotAI.cpp, BotAI.h, PetAI.cpp and PetAI.h to your Makefile.
Wow, that simple huh? This was the source package from your site though, so I thought it had everything in the makefile. sorry for not doing my due diligence first heh. I'll give it a whirl.
  #6  
Old 07-07-2007, 05:25 PM
Magoth78
Discordant
 
Join Date: Jun 2003
Posts: 345
Default

Yes, thoses files are in the sources package. They are added into the Visual Studio's project but not in the linux's project.
__________________
User's projects:
-- Original EMPIRE I/II and Factions! servers
-- Web GM Portal
-- EQoffline/bots
  #7  
Old 07-07-2007, 05:42 PM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

My sincerest apologies, Magoth... I posted almost the exact same question on page 2 and totally forgot (2 mos ago hehe). You then told me the same thing, and I just spaced out.

Added BotAI.o PetAI.o to zone/makefile.common, and all compiled well (after excluding the normal failures like azone, eqcollector and eqextractor)

I think I'll start with a nice clean database this time too.
  #8  
Old 07-11-2007, 01:38 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

I am so very pleased to report, I got my EQ-Offline compiled, a new database in stalled and updated, running, and connected! And, got to play with my first Cleric-bot tonight. If I wasn't so sleepy, I'd be up all night messing with this.

It is very, very cool. Nice work, Mag! I'll start finding bugs tomorrow. LOL
  #9  
Old 07-27-2007, 03:04 AM
Blakine
Sarnak
 
Join Date: Jul 2007
Posts: 30
Default

Quote:
Originally Posted by Magoth78 View Post
3/ You can add a member to the groups 2/3/4 by using the command "#bot raid invite bot [target] [group: 2/3/4]"
One more question is [target] the bots name you want to be grouped or just an indicator that you need the bot targeted. Also do you have to put in "group" in the last command or just the group number. Having some trouble getting this command to work. My bots wont group after I pick a group leader.

Thanks.
  #10  
Old 07-27-2007, 03:38 AM
Damilis's Avatar
Damilis
Hill Giant
 
Join Date: Dec 2002
Location: Nottingham!!
Posts: 217
Default

I can't remember, are Bot formations implimented or on the ToDo list?
__________________
GM/ServerOP - Shadows of Norrath
  #11  
Old 07-27-2007, 04:34 AM
Blakine
Sarnak
 
Join Date: Jul 2007
Posts: 30
Default

Quote:
Originally Posted by Damilis View Post
I can't remember, are Bot formations implimented or on the ToDo list?
yeah nm..lol I figured it out.

Last edited by Blakine; 07-27-2007 at 12:44 PM..
  #12  
Old 07-27-2007, 05:10 AM
Damilis's Avatar
Damilis
Hill Giant
 
Join Date: Dec 2002
Location: Nottingham!!
Posts: 217
Default

Quote:
Originally Posted by Blakine View Post
yeah nm..lol I figured it out.
...huh? You talking to me or did you accidentally quote me?
__________________
GM/ServerOP - Shadows of Norrath
  #13  
Old 07-27-2007, 07:01 AM
Blakine
Sarnak
 
Join Date: Jul 2007
Posts: 30
Default

I found the function in the code, you can disregard my post. But I believe this should be working.

Last edited by Blakine; 07-27-2007 at 03:05 PM..
  #14  
Old 07-27-2007, 12:53 PM
Damilis's Avatar
Damilis
Hill Giant
 
Join Date: Dec 2002
Location: Nottingham!!
Posts: 217
Default

Magoth: Are Bot formations implemented or on the ToDo list?
__________________
GM/ServerOP - Shadows of Norrath
  #15  
Old 07-27-2007, 01:14 PM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

I have started the ever frightening Wakka for Bots. I'll throw together a quick opener page in a sec, but wanted to get some of these commands posted so others can add/change them. I do not know much about the Raid functions yet, so I basically guessed.

http://www.eqemulator.net/wiki/wikka.php?wakka=Bots

http://www.eqemulator.net/wiki/wikka...a=BotsCommands

Last edited by John Adams; 07-27-2007 at 10:04 PM..
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:46 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