I loved the scoia'tael ending in the witcher 1, you've been siding with them the entire game and done your best to help their cause and in the end they get chased right back out of the city and nothing has changed. Games need a lot more decisions that turn out bad.
Take dragon age 2, you chase a killer at some point that is killing women and in the end he kills your mother. Before he does that though you find someone who you suspect might be the killer, you can either kill him or let him go. Now he wasn't the killer, but imagine he was. That would be so much more significant. You get a choice, kill this man or let him go.
If you let him go and he is the killer, he'll kill someone close to you.
If he isn't the killer adn you let him go, He might help you track down whoever is.
if you kill him and he was the killer you saved your loved one
If you kill him and he wasn't the killer, you might be charged as one and your loved one probably still dies.
Unless you read a walkthough or something, you have no way of knowing which option is the right one and it is so much more exciting than the moral choices bioware throws at you