Someone said one day that a story is only as good as its villain.
I'm tempted to agree for the most part. A lot of great games actually have heroes that won't even speak up.
The Hero is rather a tool to put you, as a player, in context. Its generally a good approach to have you experience the game from within.
A lot of games actually give your hero a personality, but its easy to be cheesy with that.
So in essence, I like the villains a lot.
My favorites, however, are as follows:
- The Hero that is, undeniably, a villain (see House of Cards for example, where the protagonist is clearly not an angel by any stretch).
Because the Hero is fundamentally bad (or at least, not inclined to do good for the sake of it), the narrative has to somehow make you care about them, despite their flawed logic. Though you couldn't possibly agree with them on principle, being in their shoes for a while makes you understand their twisted logic, and you get to experience a part of their history, understand their motives, share their successes and failures.
These characters are extremely hard to "paint" right, but I particularly liked Kain from Legacy of Kain (Blood Omen). This guy was out for revenge with absolutely no other consideration, and it made for an interesting game regardless. I particularly liked his witty comments on bosses he'd kill and keep trophies of: "Poor Napraptu, I knew him well........ not really".
Other games also allow you to experience your darker side. While the Hero has no clear definite personality and is controlled mostly just by you (see Fallout for example), you get to do "not nice things" just for the sake of it. It's interesting to interact with the game on these terms, as a human being, seeing how the game rewards/punishes you for your urges/curiosity.
- The anti-hero that somehow isn't either the hero nor the villain, but ends up being some kind of unreliable sidekick (CT's Magus, FF4's Kain, etc.)
Because of genre staples, most characters are stock characters (holy hero, evil villain). Having strong support cast with unclear allegiances (with shifting loyalties based on their own history and depth of character) is fun to watch evolve. You'll notice that a lot of great stories have these "wildcard" characters.