While fun should be the #1 factor keeping people playing, there is a lot to be said about other systems of motivation. Offline games in general tend to keep peoples attention for less time than MMO’s; they might be fun, but after playing 100 games of virtual basketball or killing 1000 nazi’s one simply gets bored.
Take online shooters for example. Personally, I’ve found games like CoD – games with progression to back up the innate fun of killing my peers – to have better longevity than those without.
I understand where most of these “Fun is the reward, duh!” posts are coming from. I don’t want a WoW-style gear grind either, or anything that forces me to play some way I don’t want to for months before I can compete how I’d like. But there are other ways to include progression. Take DAoC style RP system, tone it down a bit and include cosmetic rewards / titles. Or come up with an even better idea.