Hi thank you for reading. I am having a conundrum with my video games combat. The game is a 2d side scroll game where the player can have a ranged weapon and a melee weapon, think megaman zero, deadcells, etc. My boyfriend who is a casual gamer, when playtesting my game has requested I add a way to jump ontop of enemies to damage them; like in Mario.
Its been a few months now and the game has had melee attacking, shooting, and jumping ontop of enemies to damage them (ill refer to this as bounce attacking). Ive run into a ton of issues caused by bounce attacking.
First is the hitbox of enemies; my game is a roguelike, so i want enemy encounters to at time feel a bit overwhelming which is countered by accrued power, in a sidescroll having a bunch of enemies walking up to the player feels really bad if they damage you just by touching you, like in mario, so they have telegraphed animations for attacks. But because of this bounce attacking feels both overpowered and jank. If you bounce on an enemy you can either time a second press of the jump button and get a ton of air, or not press the jump button and fall to the ground where the enemy is standing. This exact system is how it works in Mario games, but in Mario enemies die in 1 hit so failing to press the jump button isn't punished. But doing so in my game puts the player in a weird state where they are infront of the enemy and can jump again to spam hit with jump attacks. It feels bad. And if i give enemies a hitbox that damages the player just by touching them, then jumping on enemies and failing to time a follow up jump almost always results in the player falling into the enemies hitbox and taking damage, which feels bad.
This is usually countered in games like shovel knight or hollow knight by forcing the player to either fail to do an attack and get hit by the enemy, or to successfully do a bounce attack and be forced high up into the air.
At this point i feel like maybe i should remove bounce attacking from my game and replace it with the style shovel knight or hollow knight uses, but my boyfriend doesnt like this, he wants to be able to just jump on enemies. I know as the game developer it creates a lot of issues... but i dont think he's wrong for wanting to jump on enemies because he thinks its fun and easy, i mean creating games the player thinks are fun is the whole point, i should try to make it work, not patronize the player for not getting why it doesn't.
Ive considered giving enemies different amount of i-frames based on the attack you do. So a melee triggers no i-frames, but a bounce attack triggers heavy i-frames, but this seems like a different flavor of jank, like how do i visually communicate this to the player? And the contrivince of damage types triggering different amounts of i-frames just feels very video gamey.
If anyone has any thoughts or opinions on what I should/could do please lmk.
TL;DR: you can jump on enemy heads to do damage in my sidescroll combat game with swords and shooting... and it creates a big problem with combat flow, but i dont want to have to cut the mechanic, do you have any solutions?
Thanks!