Posts: 591
Threads: 30
Joined: Jul 2012
Since apparently kyrub wants it here: while a smart AI might be nice, the minimum threshold should be not stupider than the existing AI, and the current Insecticide AI fails that test. In MoM combat, it is rarely worth running towards a distant target when a nearby target is available, particularly for units that have breath weapon, thrown weapon, or first strike abilities, and if for some reason it's actually worth chasing down that unit of archers, don't sit adjacent to my melee units when you do it (unless you have flight and they can't attack air. Then it's a great choice). The vanilla AI has a bunch of issues, such as combat stalls (cast prayer and suddenly the death knights just sit there two squares away for multiple turns while you shoot at them), but it's more likely to produce casualties in my army.
An actually smart AI would be more complicated, and possibly beyond the reasonable limits for what's doable by messing with assembler code, but some general observations:
First of all, I'm going to use 'first strike' to refer to first strike, breath attacks, and thrown attacks, and any other attacks that work better on offense than defense. 'Threatening' means the unit is a legitimate threat, ending up next to something that doesn't ignore armor and has less damage than your defense isn't a big deal.
Units with movement 1 will necessarily have to deal with first strike kiting; it's a flawed base mechanic. Short of changing the game rules so that units with 0.5 movement remaining cannot move (unless they're on a road?), or just increasing movement rate of most units to 2+, I don't see a way of fixing it.
Units with movement 2+ and first strike should avoid ending their turn next to threatening melee units without attacking. Using excess movement to wrap around and trap is useful. This does allow stalling a group of hell hounds with an infantry screen, but it's usually better than the alternative.
Units with movement 2+ should avoid ending their turn next to threatening melee units with first strike without attacking.
Melee units should try to attack if they can, unless available targets are mostly invulnerable, and should prioritize units with first strike and wounded units, but not to the extent of not attacking.
Ranged units should always act before melee units, and should target either enemy ranged units, or enemy melee units who will be attacked by my melee units. Note that for ranged, it is often more valuable to weaken units and let the melee finish them off than to actually finish them off. Other than that, it is usually desirable to hit units with a high ratio of offense to defense.
Ranged units with non-magical shots should save some ammunition for close range.
Units with regeneration are almost never a priority (having a half dozen cannons shooting at my death channeled troll shaman is funny, but not very smart of the AI).