I was busily farming away a few moments ago when I started musing on the basic idiocy of the ai. I was thinking about how the ai just randomly spews out spells and special moves, and how much better it would be if the ai "thought" more like a human. Then I had a small epiphany, and it occurred to me that it might indeed be possible for the ai to think and act more like a human player.
The foundation of it would have to be stats, and I think with today's hardware and technology what I am proposing would be possible. Basically the server keeps track of the damage dealt and taken by each human player over a period of perhaps ten seconds, and the special moves and spells that are used in that period, as well as the spell effects and buffs the players is affected by. The damage taken is subtracted from the damage dealt to create a kind of +/- rating.
This information is fed into a database, and to make it more interesting it is recorded on a per shard basis. The information would have to be categorized not only by the +/- rating, but also by the specials and spells used. The mob ai would then select the +/- rating for the specials and spells it has available, and the higher the mob's intelligence, the higher up the +/- scale it would choose it's tactics from with a random variation within a certain range to prevent the tactics from being completely predictable.
This would ensure that mob intelligence has an effect on it's tactics, and would prevent mob tactics from being predictable, as well as allowing them to adapt to the changing tactics of players, and in essence to "learn". Having the data compiled on a per shard basis would also ensure that the mob tactics on each shard would be unique. And something tells me this could be done with some clever coding without putting too much of a strain on server resources.
The foundation of it would have to be stats, and I think with today's hardware and technology what I am proposing would be possible. Basically the server keeps track of the damage dealt and taken by each human player over a period of perhaps ten seconds, and the special moves and spells that are used in that period, as well as the spell effects and buffs the players is affected by. The damage taken is subtracted from the damage dealt to create a kind of +/- rating.
This information is fed into a database, and to make it more interesting it is recorded on a per shard basis. The information would have to be categorized not only by the +/- rating, but also by the specials and spells used. The mob ai would then select the +/- rating for the specials and spells it has available, and the higher the mob's intelligence, the higher up the +/- scale it would choose it's tactics from with a random variation within a certain range to prevent the tactics from being completely predictable.
This would ensure that mob intelligence has an effect on it's tactics, and would prevent mob tactics from being predictable, as well as allowing them to adapt to the changing tactics of players, and in essence to "learn". Having the data compiled on a per shard basis would also ensure that the mob tactics on each shard would be unique. And something tells me this could be done with some clever coding without putting too much of a strain on server resources.