First of all, lemme move this topic to the Off-Topic forum section, where it will fit in better.
Now to answer your question, and give the fullest and most correct opinion/reply you will get on this topic:
What makes a game good?
Pretty graphics (pretty =/= realistic, even NES Mario looks pretty, and also some very dark games look pretty, because it's stylized like that), interesting, engaging and fun gameplay, an intriguing story, no annoyances, a good soundtrack, and so on.
Now, this is how a lot of indie games are on Steam, but yet very few are popular.
There are four main reasons why something can be really popular.
These frist two are tied together.
1 - Stupidity, funniness, etc, which will attract people because it's so stupid. Like, a game about poop for example. Now, this becomes popular because people like cheap and easy games that make them laugh. A second result of this is because YouTubers will play it, so it will serve as promotion, which ties in to reason 2.
2 - Promotion, sponsoring, advertising. This is why AAA titles are popular, they don't offer much new, but they are everywhere, on TV, on internet ads, in big events, and so on. The champions of this are EA, they even made freaking Zac Efron play there new Battlefield game! This ties in with reason one, because Youtuber-bait is also a form of "sponsoring". You make your game so stupid, ridicule or funny that YouTubers will automatically play it, you don't even have to pay them. Another form of advertising is a kickstarter, which allows your game to become very known, but there are currently so many games on that site, that it's way harder to kickstart a game now then let's say two years ago.
If you want to make a more serious game, and don't have money to advertise it litirally everywhere, then this is how to get a popular game:
3 - Don't make it good, make it absolutely amazing in it's genre. Make it a true masterpiece. Want to make a rogue-like? Then play and analyse a lot of existing rogue-likes, look what's good about all of those, look at the bad things, try and combine every good thing, and make the game in such a way that it is flawless, nothing annoying, a perfect difficulty, aim in your head that it should achieve a minimum of 85% on Metacritic, make your game that amazing, and it will get popular. You see, good games used to get popular, back in the earlier indie days, but now, there are SO MANY GOOD indie games, that good isn't enough to be popular, you have to be amazing.
4 - Make something groundbreaking, something never done before. This is probably the hardest of them all to do. Make a game that is amazing, but also "new", something that feels different, like Undertale. But for that, you need to have a great mind that can think outside of the box/standard, you need to be a great planner, and so on. Don't copy a formula/genre, make your own formula, and if that new idea is a good idea, and if it is executed/created well, you'll have a massive hit. Don't aim for this unless you have a genius mind, and a lot of experience. Aim for number 3.
5 - Another factor is accessibility. Why is Dwarf Fortress so "unpopular" (it is quite popular, but not mainstream at all), it has everything. It is amazing, almost flawless, completely new, and so on... That's because it's just so hard to learn, so "nerdy", so complicated. Accessibility to the average gamer is something you should aim for if you want a popular hit.
The best example of all of this I have is "Portal". It is really funny, it was promoted hugely, it was also created absolutely amazing, it was something new, a new idea, and also accessible to anyone, even GIRLS who never play games!
Good luck.