I've been thinking about how horrible bots currently are, they have not a clue what to do about active abilities! Unfortunately it isn't as if we could just have them cast their abilities whenever they're ready, unfortunately, as several abilities are only good in certain situations (You don't want him casting an AoE heal when you only have enemies surrounding you, or AoE Damage when the opposite is true, do you?). So, to prevent that whole snafu, I have decided that adding types to the War3_AddRaceSkill would be a good idea (defaulting to Type=Unknown, so you nice folks don't have to recode all your races just yet) the issue is, its hard to tell precisely which types are needed, I have a few ideas, but not even close to enough.
Unknown = Default for all skills, as well as for skills that don't fit into any other category
SingDamage = Does damage to a single target, currently I believe that it should only attempt to cast it when a player is in a certain range (say...1600 or so) although this does slightly cripple the use of whole map abilities, I may add another type for that
MultDamage = Does damage to multiple targets - will try to use it when multiple enemies are nearby, or if no one else is left
SingControl = Controls a single target (e.g. polymorph, roots) - will try to use when there is a single enemy, I may make it attempt to emphasize casting it when the target is running
MultControl = You can probably understand it from the two above
Obviously there are a lot more...and I want to make ABSOLUTELY CERTAIN that you understand that if/when I implement this, this will in no way, shape or form limit what you're allowed to do with abilities! The only point will be to make the bot able to understand a bit more about what he's doing with his ability, as well as allowing races a way of understanding what other race's active (possibly passive as well) abilities do.
I also want to point out that I will likely ensure that the bot will only attempt to cast an ability when it can see, or has recently seen an enemy, so they won't go shooting people through walls with spells.
Overall this will be pretty easy to implement for the most part, but any ideas you want to pass on to me will be most appreciated.




Logged





