First, hello there o/ (First post)
I think a good game needs a nice planning first. Keep in mind that most of the mistakes are done even before writing one line of code. Have a bigger picture, minimize risk.
In addition to this, game should offer something new. It doesn't have to be breakthrough or pioneer but still who wants to play yet another X, Y, Z?
It is good to keep amateur soul, but still add some professionalism.