I've been reading several of Ernest Adams' articles lately, and most recently his Bill of Players' Rights. All of his choices make sense to me, as a gamer and as a fledgling designer. Thinking back on my unsatisfying play experiences of the past few years, every one of them can fit into at least one category.
The main category I find many games have trouble with is establishing victory conditions. This is a subset of some of his other writings, mish-mashed with the Bill, but essentially the idea is this : the player should, at any point, have a clear idea of how to win the game. This requires information, feedback and responsiveness in the form of controls. If any of these are missing, it's likely your victory condition hasn't been adequately explained. If your victory condition hasn't been adequately explained, then your game is going to be frustrating.
As a very vague example, a friend was relating a story from Mass Effect 2, wherein he'd been asked to do a specific mission. Hurry, they said. He, thinking like a gamer, decided to go and do a side quest on the way. Unfortunately, this resulted in mission failure and the death of an important character. If you've ever played an RPG, you know that 'now' rarely, if ever, actually means 'right now'. We believe, and we have a right to believe given previous feedback from other games, that the world waits on our whim. If we are the central character, then this should certainly be the case. Changing this at one specific point, but not others, conceals the victory condition, and makes for unsatisfying play.
Where Facebook games get it right, however, is by going completely in the opposite direction - they not only don't specify a victory condition, they often don't have one to begin with. What is the victory condition of FarmVille? Pet Society? Restaurant City? In many cases, it's to beat your friends, but it's so highly individualised, and these companies have realised this so completely, that the only direction they provide is information. The player brings their own responsiveness and feedback to the process, and is therefore satisfied.
This blows my mind a little bit. I'm not saying Facebook games have longevity. My own list of used-once-never-accessed-again apps is long enough to be used as a gown by an especially short arboreal princess. What I am saying is that my drive for playing Hotel City is to decorate the rooms I let to my guests. My victory condition is having a room that looks pretty. Therefore, I will go through with whatever else the game asks of me in order to accomplish my goal, but beyond levelling up and attempting to create a 5-star atmosphere, no other direction is provided. The only aim of the game is to perpetuate the playing of the game, which reminds me of Aliens, only with far less Geiger.
So, obviously, there's room for discussion within the idea of the victory condition. Technically, I will never win Hotel City. Even if I reach max level, there will always be new furniture or wallpapers to buy, and my hotel will constantly evolve. I cannot win. The same is true of most MMOs. The exist in order to exist. We give them meaning through our time, as Jesse Schell said. I invest time in it, so it must be worth my time, and therefore worth my money. It comes down to how the player feels, in the end, as that's the true victory condition. Everything else is just the interface between player and emotion.