I've been making a 2D platformer in Unity and it's been going great. I have the fundamentals down (and as an experienced programmer, I know how to get the results I want; this is not a programming question.)
I've been floundering, though, because I realize that I lack vision in terms of a game direction. I originally wanted to make a Metroidvania-style game, but decided to scale back as I thought that would be too ambitious (and take too long) for my first game. As such, I've decided to create a platformer/run-and-gun type game.
I've played enough platformers to know and intrinsically understand basic mechanics, but I also realize that the best games have a core mechanic that defines the game. Megaman's core mechanic, for instance, is obtaining and using boss weapons and abilities; boss battles and levels are built around this. Metal Slug revolves around weapon pickups and its tank gameplay.
I guess I'm at the point where I have a code demo....but it's not a game; it has no soul. I've basically just proven to myself that I can write a platformer game in Unity.
I want to know of any good resources on aspects of video game mechanic design not centered around programming - book recommendations would be amazing, but online resources or other types of resources would be great as well. (Worth noting that I'm not looking for guides on designing levels, but lower-level mechanics, like jump height, hp limits, core mechanics to define a game, etc.)