I thought a neat way to make NPCs less dumb in games would be to let other players (internet connection required) to be the NPCs. They would have limited coverage area maybe set tasks and restrictions and let them fight a real person to move onto the next part of the game.
Basically set up a queue of player and what NPC character to play and when a user gets to that part of the game where NPC needs to load, you jump in and play. When the NPC dies you the game (scene) and get put back in the queue of playable NPCs.
You're storming the beaches of Normandy. You duck behind cover. Suddenly a shot rings out. You're dead. The kill cam reveals you were killed by a human-controlled enemy, standing on a seagull in the skies above. [1]
Unfortunately, humans will find advantages that shouldn't be used in any sort of game that tries to build a believable world.
That isn't to say it's a bad idea. You'd just have to design the game with human enemies in mind. I was very interested in The Crossing [2], which incorporated that of mechanic. Unfortunately, it was canceled. :(
Basically set up a queue of player and what NPC character to play and when a user gets to that part of the game where NPC needs to load, you jump in and play. When the NPC dies you the game (scene) and get put back in the queue of playable NPCs.