I had a talk to Adamo at the chat yesterday, he said the same thing "Monsters die too fast!". And I agree, it would be cool creating monsters where every one is a challange, it doesn't have to be like high HP, because that is just boring. But that they have diffrent way of fighting, diffrent resistence etc. some may be incredably good at blocking/avoiding melee attacks, has high resistance, but are worthless against missiles etc.
But this is nothing new, even DM use this on some monsters, but some visual effects like a monster accually blocking or avoiding the attack would make some more realism to it.
Things like having favourite targets, fighting technics etc. isn't that hard to implement. I created a checkers game a couple of months ago, there I learned alot about using alpha-beta pruning (or min-max) and heuristic values. A short explanation for this is that the computer are searching for the best move by searching all posible moves (including opponents move), and when he reaches a certain depth he evaluates the gameboard and get a heuristic value. When every move posible have been searched at a certain depth the computer takes the move with the best heuristic value and make that move.
The whole fightingtechnic/movingtechnic can be created easely by just having diffrent heuristic value depending on what the monster wants to do. I have never implemented this into any rpg game before, but I think the result will be very good. The alpha-beta technic may be best sutied for several monsters in group, but will still work for one monster. Now lets say if the monster/monsters never has seen the party, any opponents. Then he wouldn't include them into the "searching", or that he have seen the party in a certain spot, then he will assume that the party still is in that spot/area when "searching".
Anyway, I don't want to wander of from the topic, so lets say that every monster has their own influence mapping. And that monster groups share the same influence mapping, and that the monsters can wonder of from the group and then copy the groups influence mapping and make it his own, or the other way around, wander into a group and take the groups influence mapping. in this way the monsters with the same "thinking" or wanting the same goals (getting the same heuristic value) will form groups automaticly. And by using a alpha-beta algoritm, groups of diffrent monsters will cooperate as long as they are after the same enemy. When implementing this right, I think we will get monsters accting as inteligent as any human playing, or even better because they would have a better overall view..
(I want to clarify that the influence maps would be used for getting a good heuristic value)
This is somewhat my vison:
Groups of monsters are in a room, they have spotted the party. Some groups like attacking right on, some attacks from distance with spells and some like flanking and others healing. The result would be that the party would be surrounded very quickly and it would be almost imposible predicting the monsters behaviour. Another scenario would be that one monster may have seen the party, but he decides to hide because he knows that an attack would be more succesfull as soon as the other monster nearby are there too. Maybe he tails the party until the party bumps into another group of monsters, THEN he attacks from the behind! It is almost imposible knowing exactly who the monsters would behaive, even if I programmed their AI myself. Another result may also be that if I give monsters a memory by using a specific influencemap for this. Then supprising a group of monsters may result in them running away very quickly because all they can remember from the party is that bad things happends when they are near.
It would be sooo cool..
