There is a belief among many beat 'em up players (Final Fight, SOR2 and Ninja Gaiden 2 players in particular, in my experience) that designing games around theoretical no damage runs isn't a goal worth pursuing. This is something that I have always had trouble grappling with because I'm both an enjoyer of that kind of gameplay style (love my grapplers), but also a firm believer of the idea that singleplayer games should be "solvable" in terms of survival, instead of becoming games of luck & probability as the difficulty escalates.
I've had a lot of trouble trying to fit these 2 things together in any way that would make sense, but recently I realized that something really basic connects all of them together - it's how they handle [TIME]. This is more subtle than you'd expect.
To help think about this, view any action the players perform as part of one of 3 categories - building advantage, losing advantage & neutral. The first 2 are (hopefully) easy to understand, but the 3rd one is a little complicated. The purest example of a neutral action is silly stuff like pausing the game or leaving the combat arena. All advantage/disadvantage gets reset or gets stuck in the same state. The more complex & interesting example of staying in neutral is evasive or defensive play in a lot of games with very powerful movement - you aren't losing anything by dodging since repositioning is free, but you aren't gaining anything either. Whiff punishes & multiple targets complicate this further, but there's a general range of interactions that can be seen as the game being stalled or constantly reset.
Someone eloquently described NG2's combat as "dying slower than the enemies", and I think this is a perfect way to describe the role forced damage plays in games - it's a dynamic timer which eliminates the idea of the neutral state. And if there is no neutral state, then every action you perform whether an attack, a dodge or even staying still has meaning. It advances the game in some way.
When viewed as time a lot of this stuff starts making sense. Exploding shuriken spam in NG2 makes evasive play risky and creates a cost to trying to stall the game - even if you can get skilled and minimize damage, its not a guarantee. Because of the enemy speed they will often also block you off from running and overlap in nasty ways you can't control. Contrast that with Nioh where, a handful of enemies aside, you can stall and retreat very easily and comfortably.
Streets of Rage 2 on Mania represents perhaps the most extreme case of this sorta playstyle in beat 'em ups - it floods the screen with basic popcorn who can sneak in hits like nobody's business. And unlike NG2, the game has very slow movement speed and a relatively small arena, making evasive play basically impossible instead of merely risky.
This is also why shmups can capture a lot of the same dynamics without forced damage & with incredibly effective movement and "neutral game" - the time element simply comes from the autoscrolling itself. Neutral is costly because if you aren't killing enemies, you're allowing more enemy overlap to happen, making things more difficult for yourself. Beat 'em up autoscrollers can tap into the same gameplay, but tend to be held back by either a slow spawn rate, or spawns that are tied to wave kills (kill wave 1 to make wave 2 spawn).
Integrating time more deeply into action games is the only way to create the kinda aggressive, proactive play that a lot of beat 'em up fans are after. Forced damage is just one of many ways to go about it - games can be designed around no damage and still have most of these desired dynamics if time is well integrated into their gameplay.
The "forced damage" discussion is also tied into RNG and how it should be used but that's a whole other can of worms.
