Yes. You did. Sadly.
And it is very little to do with luck or numbers or the state of the industry.
Good indie games:
1. are almost never distinguished by programming (the days of Doom are gone and you are not John Carmack). Far too much time is spent coding. Use existing tools. Code only gameplay.
2. are much more about art. The trailer looks like programmer art: no coherent style, no direction, no class. If this is what you produce. You need a collaborator.
3. are even more about feel. Your character movement is janky. Jumping is floaty. Shooting feels flaccid. There is little sense of gravity, inertia or impact. If it isn't fun to move around a single screen, it's not fun.
4. need a hook. There is almost nothing original about this game. You've got about 10 seconds to hook me. (10 seconds into the trailer you cut to a mostly empty UI.) Find the wow. And zealously focus on it.
5. need to be polished. Ambient animation. Consistent sound effects. Screen shake. Lighting. Particles. UI. These are implemented. But none of them particularly well. And they don't tie together into a whole.
6. need to be marketed. Someone needs to be working on that.
7. needs to catch (or create) a zeitgeist. So many features of this game shout '2014' to me.
8. needs a bit of luck. But beware! The converse is very rarely true. If your game isn't successful, it is probably _not_ because you were unlucky. The game probably wasn't very good. Don't spend your time trying to find alternative explanations. Be brutal with yourself. In game terms, git gud.
So this is harsh I know. I'm sorry. But frank. I've been in the industry for more than 20 years. 99.9% of games fail horribly. But 99.9% of them are not very good. This has absolutely always been the case. It's just that the 'fail point' used to be the publisher pitch. Now you don't need a publisher, you get to fail in public.
So yes three years have been ...um... call it learning. I suggest you do more jams. Figure out what it takes to win. Find a game artist. Use tools. Build prototypes. And start to build a community.