I think a game is good enough to sell when people buy it and show lot's of interest in it. Before you decide to sell it, place screenshots and perhaps a pilot version at the showcase forum. the wait for the reactions people give. Don't get offended when the critisize the game, but do something good with the critisism.
Imo good selling points for a game are good looking graphics, a good storyline, a good overal presentation (like menus, loading screens and such). Diverse levels is a must also, don't just let the player shoot and kill, but try to bring in other gaming elements. Also bring in something original into the game, that helps a lot. Don't just clone a game, but add something of yourself to it.
When you're working on a game, get feedback from others. If you get ooh and aahs you're on the right track.
Don't cut corners when it comes to designing. I something doesn't feel and look right, people will not play it. If a level doesn't run as smooth as you want it to, redesign it. If a script isn't working as you want it, rewrite it again.
I do think my game The Commander Josh is good enough to sell. I'm not basing that on my own opinion, but on the reactions of others. Check out the comments people make here:
http://forum.thegamecreators.com/?m=forum_view&t=78354&b=25
This game wasn't written overnight, it took a lot and a lot of effort. I completely did costumize the game, with new segments, new entities, a lot of new scripts and improved scripts.
I also improved and rewritten the enemy scripts to make them much better. After I had the game done, I let some people play it, but the general comment was, th enemies, they're just not good enough. So I did spent a couple of days to improve their scripts.
Also I wasn't happy with the lighting in the game when done. So I redid part of the game and wrote some extra light scripts to get a better atmosphere and mood in the game.
Most people around here aren't prepared to go to the max when creating a game. You need to be prepared to put in time and effort.
When the game is done, you need to work on it's overal presentation. Don't use crappy loading screens, intros or menus, they will destroy your game. Don't use a slapped together website to present it, design one that fits the game.
But most important of all, create a game with recognizable line in it. What I mean is do not mix just about any good media you get. Make sure everything fits well and the keep the line persistant. Everything in the game must fit together. That's very important. For example, don't create stunning enemies and let them run around in sloppy textured buildings. Don't use non realisting characters in ultra realistic surroundings. Make sure everything matches and the line in all levels is kept. So don't go from comic looking levels to ultra realistic looking levels, but keep the style.
Lastly, be prepared to invest. If you cannot create good looking enemies, but you can create good looking segments, find someone who can do the enemies for you. If you're great at creating static entities, but you can do the proper segments, find some that do match.
People do not buy crap. It's as simple as that, so don't expect them to do so. Also don't get the idea that all people want is the next quake or half-life. That's not true. People do enjoy indie games, as ling as their fun to play and have something original in them.
Well that's it, hope all of my rambling will help a bit.