This is a pretty long writeup on something relatively minor, but I’m always disappointed by games that have health mechanics that don’t complement the minute-to-minute gameplay, or worse, trivialize it. For example, Breath of the Wild was an incredible game but the combat was completely neutered for me by the ability to open an inventory and devour a feast of apples to get all your health back! More often than not, health IS the game; losing it is the only fail-state, so I wanted to go into detail about my decisions behind its implementation in Fight/Flight.
There will be a TLDR for those who just want to hear how the feature works 🙂
While the game is designed to be challenging, I’m hoping to make the player feel powerful and to reward them for taking risks. That aim meant a fairly lenient health system was a better fit than the player only being able to take one hit, like in Devil Daggers for example, in which you are constantly one mistake away from death. It’s almost unbearably tense as you approach your high score, but that game is designed to make you feel like you’re never fully in control. For Fight/Flight, I want the player to be able to shrug off a few hits, because they’re just that badass! Each hit should still feel meaningful however, so for now they only have a small health pool. 5 hits and it’s game over.
In playtesting that caused some issues if the player took a few hits early on. With no way to regain health, an early hit left them at a permanent disadvantage for the rest of the run; similar to getting a bad start in racing games, it made more sense to just restart rather than risk wasting your time.
So it was clear that some method for regaining health was needed. The regeneration over time commonly used in FPSes wouldn’t work, as it encourages too defensive a playstyle. With the player’s max speed being so high, if they don’t want to engage the enemy there’s not much the AI can do to force them! So that gives them infinite time to run away and regenerate health.
How about health pickups then? Doom 2016 gave me a new appreciation for health pickups because of the way they encouraged an aggressive playstyle. To get health back the most reliable method was to rip it out of your enemies. This is great for Fight/Flight, not only does it force you to engage if you want to recover health, but due to the swarming nature of the enemies if you want to actually collect the health, chances are you’re going to have to get in close and personal.
So I added some generic-looking (for now) health orbs. For added satisfaction they fly towards you, and your pickup range is increased the faster you move, creating these amazing clutch moments where you boost through a huge swarm of enemies to massively recover your health.
Seeing orbs exploding out of your enemies and boosting through the wreckage to collect them is is to be honest, fucking satisfying. I want to give players the opportunity to do it often, so drop rates are pretty generous. This totally changes the economy of health though. Suddenly 5 hits feels like an awful lot when you can easily recover all of them by killing a handful of enemies.
The solution is simple, each orb recovers less than a single chunk of life bar! Right now you must collect 5 orbs to refill some life. If you get hit while working on regaining health, you lose a lifebar AND all your progress to filling a bar you’d already lost.
This was a game changer. You could be putting yourself in harm’s way for no payoff, so suddenly going for health pickups is a serious decision rather than an automatic response to seeing Green orbs fill the screen. When you’ve nearly refilled a lifebar those last few seconds of dodging bullets while speeding towards that last orb are unbelievably tense, and the rush from successfully grabbing it in the nick of time is huge.
TLDR: The healthbar is split into 5 chunks, enemies drop pics that refill a portion of a chunk. Getting hit loses a chunk and all progress to refilling a chunk. A concentrated dose of risk and reward, woohoo!
Thanks for reading, I hope this kind of content is interesting because it’s the kind of thing I love talking about. I think if 100 devs were given the task to make a “Flying VR FPS”, each of them would still feel distinct because of different approaches to the mechanics we often take for granted, and that’s exactly what I love about game dev.