Starcraft tanks are a good example of why it`s hard to make a good AI for Starcraft. When AI decides to attack and is sending his units your way, if you happen to have tanks his units will enter under the tank fire umbrella without taking a second thought and get slaughtered no time. IMO it`s not that hard to prevent such dumb behavior. If my memory and observation is accurate Unreal Tournament original had the bots smart enough to allow them avoiding enemy fire range (they also had the ability to not come out in the open at the junctions between rooms and hallways if under fire). Something similar can be done in Starcraft. A unit is able to calculate its own fire range when it`s about inflicting damage, it could very well calculate the enemy fire range as well and stay out of it. It has to be slightly predictive but it`s not a lot of work. When executing the ‘stay out’ maneuver as it is advancing the unit could find safe regions bordering the tank fire umbrella where it can stop and figure out the next course of action.
That`s all I had to say.
The problem with AI in tactical games is mostly that it is easy to make them so smart that a human cannot beat them. That of course completely defeats the purpose of the game since nobody wants to play such a game.
Depending on the player, too stupid could also be a problem, I agree.