|
|
 |
 |
 |
 |
|
 |
 |
|
 |
 |
|
 |
|
Development::Bots Forum for bots. |

05-26-2007, 01:41 AM
|
 |
Sarnak
|
|
Join Date: Nov 2005
Posts: 62
|
|
It works for me using winxp/titanium.
__________________
"Cherish your family and friends for you are truly poor without them. With them, you can merge to form Devastator."
"There's no place like 127.0.0.1"
|
 |
|
 |

05-26-2007, 05:59 PM
|
Discordant
|
|
Join Date: Jun 2003
Posts: 345
|
|
Hello there,
I actually have a problem with formulas for the melee bot output dmg. The goal is to make their dmg calculated on criterias and to be as close as the clients.
My maths are pretty bad and I need your help.
For the dmg calculation, I would like to take into consideration:
- the lvl of the bot
- the class
- the atk/delay ratio of a weapon (1h, dual wield and 2h)
- the str/dex/agi depending of the class
- any other criteria ?
For an example and for a warrior with 100str, I've tried:
For a 1hand weap in the primary melee slot:
Code:
( (atk/delay)*(str/3) ) + lvl
For a 1hand weapon in the secondary melee slot:
Code:
( (atk/delay)*(str/3) ) + (lvl*0.33)
At lvl10, with a 10/30 weapon, the warrior would deal as its max melee output:
primary: 14dmg
At lvl20,
primary: 18dmg
at lvl50,
primary: 27dmg
wich isn't accurate at all..
This is just an example to show how bad are my maths and what the issue is : to find a correct formula for the melee bot.
The second issue is the way the bots do assist. I need to have advises/ideas on this.
Actually, each bot attacks the mob(s) that attack this bot. Also, each bot attacks the mob(s) that attacks you(the leader).
It needs to be improved and for that I have an idea but I need your advises.
I can make it so each bot (but the CC bots) assist the main melee of the group. I mean, if there is a warrior, they only assist him, else if there is a SK they assist him, else if there is a paladin, etc... This way, it will be easier to code the CC bot so they can do some CC on adds.
But now, what happens if you're not grouped with any melee ? I could make it so they assist you by default... or a pet...
Any ideas on this ?
G'day,
mag
|
 |
|
 |

05-26-2007, 07:13 PM
|
|
How hard would it be to have them **listen* in group?
Like you state "assist me on this rat" then they assist you on that, "off tank to a_Snake" then the pally or SK goes to that.
Make the player like a general, to distribute the bots.
Another this is, can you tag them as MA, SA etc? like send them a tell, "main healer" "main tank" "off tank" to have them learn there roles?
Having the enchanter auto mezz adds would be nice, but what about unmezzable mobs? need to off tank them, and allowing the players to decide what to do when would add a more **realistic** feel to the bots.
|

05-27-2007, 05:35 AM
|
Hill Giant
|
|
Join Date: Mar 2005
Location: japan
Posts: 171
|
|
hehe
heck with a program like these bots soon we real lfe humans won't be needed. The BOTS will take over and do everything. 
|
 |
|
 |

05-27-2007, 08:01 AM
|
Discordant
|
|
Join Date: Jun 2003
Posts: 345
|
|
Hello there,
Mattmeck, this is very interesting.
Making them listening the leader shouldn't be too hard to do.
Giving orders to the bots is what I'm doing automatically depending of situations. Theses methods are defined in their respectives AIs.
Like you say, another option would be to directly give orders to the bots wich would give a strategic dimension. Now, the only issue I see on this is that you would play more as a commander than a player. Even if the orders stay very simples like "assist me on %target", "off-tank1 on %target", "mez %target", etc.. you would spend more time to give order than fighting.
But that's an interesting option.
Concerning the possibility to tag them. That's what I'm actually thinking about. I think that's the only way to work with raid bots. Yes because there will be a gestion of more than one single group and you will have to assign tasks, main tank, off-tanks, etc..
As an example, if you want to have 4 groups, you would have to:
- create the groups
- make the bots joigning their group
- assign each leader (there will be 4 leaders: you and 3 bots)
- give "general" tasks to other groups leaders like, for example, "Assist g1/2/3/4", "Guard the place", "follow g1/2/3/4", etc... I can do that with the #commands so it's easier to bind the keyboard keys.
Concerning the enchanters being able to mez the mobs. As the unmezzable mobs can't be mezz'd, the enchanter must first check the "mezzability" of its target. If it's mezzable, then it will mez. Else, it will pass to the next mob. Once all the engaged mobs have been checked, the enchanter can start to make some damage on the main target.
Now, yes, I can (and it would be easier) to make it so the leader decides when a bot can mez the target. The #commands could be "cc1/2/3/4/.. mezz my target %target".
Kouhei, the bots will always need us to fix the bugs we have coded in them, so don't worry 
|
 |
|
 |

05-27-2007, 07:49 AM
|
Sarnak
|
|
Join Date: Dec 2005
Posts: 43
|
|
Quote:
Originally Posted by mattmeck
How hard would it be to have them **listen* in group?
Like you state "assist me on this rat" then they assist you on that, "off tank to a_Snake" then the pally or SK goes to that.
Make the player like a general, to distribute the bots.
Another this is, can you tag them as MA, SA etc? like send them a tell, "main healer" "main tank" "off tank" to have them learn there roles?
Having the enchanter auto mezz adds would be nice, but what about unmezzable mobs? need to off tank them, and allowing the players to decide what to do when would add a more **realistic** feel to the bots.
|
I am really really hoping for something like this.
|

06-17-2007, 07:00 AM
|
Fire Beetle
|
|
Join Date: Apr 2006
Posts: 15
|
|
cant seem to download the files from mag's site, anyone else having problems?
|

06-17-2007, 06:55 PM
|
Discordant
|
|
Join Date: Jun 2003
Posts: 345
|
|
Hello,
back from vacations.
Zard> You're right, for some reasons the npc (but bots) don't cast their normal spells. That must be something that I've changed recently in the code, I will try to fix that.
shadowdeamon01> At the moment, you can download the windows binaries files. I've removed the codes from the website because it changes very often and I don't want to upload it each time I make a change.
Mag
|
 |
|
 |

06-28-2007, 01:11 PM
|
Hill Giant
|
|
Join Date: Nov 2004
Posts: 160
|
|
Some things I've noticed... inviting a player to a group where bots already exist crashes the game every time, but adding the player before summoning the bots works fine...
::EDIT:: Also seems trying to zone in to a zone with active bots by another player crashes the zone, at least from char select haven't tried just regular zoning yet
also bots won't help anyone but those that summoned them, so a secondary player won't receive heals or anything from a bot, I know you haven't really put in support for multiple players yet but figured I'd at least give you a heads up
on those lines bot's hp bar in the group window don't show up for anyone but the person with the bots.... so other people in the group see nothing.
And finally as an aside, I can't help but notice that at higher end clerics are healing for 400 while shamans are healing for 600... this is at 50+... I know clerics get smaller faster and more effecient heals at higher end, but it's kinda sad to see a warrior with 10k hp get healed for 400 at a time hehe maybe some way to impliment a check into that, like whatever you use (I assume something along the lines of when player hp is <70% cast: (latest heal spell) but perhaps a sub line like
if player health is <70% then:
If player is missing 100-600 hp cast 400 hp heal
If player is missing 700-1100 hp cast 1k heal
If player is missing 1100+ hp cast CHeal
I know it's not that easy since you have to take into account caster level and spell levels and whatnot, but even if it lagged behind the character's actual ability so that you only type up a new hierarchy every 5 or 10 levels I think people would be willing to deal with a slightly behind the curve cleric that heals accurately instead of one that spams the latest heal even when it's not at all useful... /shrug just my thoughts, If you want I can dig through lucy and come up with an actual hierarchy by level range. For most classes or applications this isn't terribly necessary just healing since it's so Time sensitive /shrug
Last edited by Zengez; 06-28-2007 at 09:18 PM..
|
 |
|
 |

06-29-2007, 07:47 AM
|
Demi-God
|
|
Join Date: Jul 2006
Posts: 1,552
|
|
I really need to try getting this to work again... I feel I am missing all the fun!
|

06-30-2007, 12:14 AM
|
Discordant
|
|
Join Date: Jun 2003
Posts: 345
|
|
Hello,
Zengez, there isn't any support for multiplayer at the moment, that's why you re experiencing a lot of issues if you log more than one client.
But multiplier is something that I will like to work on in the future. I can imagine a server where everyone can have his own group. A raid would be doable with 4-5 players, that could be nice on pve and pvp servers.
Concerning heal. A bot, when it spawns, learn its spell list depending its level/class. When a heal is needed, it will scan its spell list and the first heal will be the one it will use everytime. I can't change that for the moment but that's something I will have to look into.
|

06-30-2007, 10:03 AM
|
Discordant
|
|
Join Date: Jun 2003
Posts: 345
|
|
Update:
-- I've fixed the issue that occured since the last patch concerning NPC's spells. They re now working correctly. Download the latest builds on my website.
-- I've added a new command: "#bot group summon" that will summon all your grouped bots to you, then they will take place as they should (they will just split). This command will be usefull in closed place I think.
-- the full project's sources are availables again on the website.
'Nite,
Mag
|

07-01-2007, 12:15 PM
|
Hill Giant
|
|
Join Date: Nov 2004
Posts: 160
|
|
Any chance to get an adapted version to the 6/19 version of the emu, so functions like #traindisc and all those other fixes work in the bot version? Not really sure how extractable your work has been or if that would be a huge PITA.
|

07-01-2007, 12:22 PM
|
Discordant
|
|
Join Date: Jun 2003
Posts: 345
|
|
Quote:
Originally Posted by Zengez
Any chance to get an adapted version to the 6/19 version of the emu, so functions like #traindisc and all those other fixes work in the bot version? Not really sure how extractable your work has been or if that would be a huge PITA.
|
I can't make it, that's too much work for the time I've atm.
|
 |
|
 |

07-06-2007, 09:12 AM
|
Discordant
|
|
Join Date: Jun 2003
Posts: 345
|
|
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
|
 |
|
 |
Thread Tools |
|
Display Modes |
Hybrid Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 12:25 PM.
|
|
 |
|
 |
|
|
|
 |
|
 |
|
 |