Computer-controlled characters do some things better than humans can. They have complete battlefield awareness, so they can see someone start a spell with a 0.5s casting time, switch targets, and interrupt with a 0.25s casting time spell. (Of course, a human can occasionally interrupt a 0.25s spell with a 0.25s spell by just firing at random, “I’ve got a hunch he’s about to cast…”) NPC healers never whine about needing to be the healer, and they never get tired of staring at hit point bars.
The hard part can be making it so you want anything other than NPC companions. There is a narrow space between “completely useless” and “good AI,” and then between “good AI” and “better than the player.” In a FPS, the only limits on how aware and accurate an NPC is are computer-defined. One balancing factor is that NPCs exhibit perfect tactics but absolutely no strategy. Another is that you can just stop trying to improve the AI at some point; if it is already competitive with the humans, you don’t need to improve it, and you may have gone too far. GW also PVE-only skills, which are overpowered and not available to heroes and henchmen.
Another is letting the computer do completely stupid things that humans do. This also adds a sense of verisimilitude when playing with them. I used to joke that my heroes needed advanced “don’t stand in the fire” lessons. Then I watched a hero run past me into a sandstorm to start casting his spells, and it stopped being funny.