Inspired by Boghog’s hacks in their in-dev game Armed Decobot, I decided to try to think of some hacks that Angeline Era’s bumpslash combat system uses.
Part of why I’m motivated to talk about this is that I’d love to see MORE bump combat games in the future, but I (currently) am not that into the idea of making another one right away. Since there seem be almost no other completed 3D bumpslash games on Earth I decided to start working on this “The Book of Bumpslash”, where I try to talk about motivations in the design and coding of Angeline Era so as to make it easier for others to do it in the future. The book is pretty much empty, as I’m writing it in slowly as we finish up development.
By the way, if you haven’t yet, there’s a demo of Angeline Era up on Steam you can play.
Be sure to comment here (or on the book page) if there’s sections missing you’d like me to go into.
Afterhitboxes
Probably the most important hack. Because bumpslashing only occurs when walking into an enemy, if the bumpslash activation hitbox is too big (the red hitbox in the video above), bumpslashes will get triggered accidentally.
However, if only the red activation hitbox does damage to an enemy, then the sword ends up feeling too short-ranged compared to its visuals. Hence, the game spawns a yellow Afterhitbox after attacking - in yellow - which will also deal damage to enemies.
An advantage to this approach is that the red activation hitbox can be consistent across different weapon types, but the yellow afterhitbox can be tuned to convey different sensations with the weapons. For example, there’s a weapon (Rapier) with a long and thin afterhitbox, and one with a very wide afterhitbox centered around the player (hammer).
The game is mainly designed around the base sword + gun, but we assume that players will find niche or side uses for the various subweapons.
Tall Bumpslash Activation Hitbox
Because of the top-down 3D camera angle, jumping up into enemies to attack is imprecise. It can be easy to bump the player’s hitbox into an enemy without intending to. To account for this, the Bumpslash Activation Hitbox is taller than the the player’s hitbox (the green wireframe capsule.) Even if you sort of jump into an enemy, you’ll usually get the hit because the activation hitbox will hit the enemy first.
Instant Turning
This is less of a hack and more of a feel thing, but because player attack intention is almost always aligned with the controller’s input direction, turning has to be instant. I think if you look at our other 3D games like Sephonie or Anodyne 2 where this doesn’t matter as much, there’s a few in-between frames when turning.
If you play Angeline Era on a controller, you can actually get some in-between frames simply because the movement of a thumb on a joystick will not always take the shortest path to the desired direction, so I ignore inputs where the joystick has not moved beyond 10% of the movement range, so as not to make the player spin too wildly when changing directions.
Other than that, this approach allows for some techniques where you can actually mash different directions after an attack and get the afterhitbox to overlap more enemies behind you. Depending on the game you’re making this may not be desireable, like if you wanted people to commit to attacks more.
Post-Attack iframes
The player is invincible during the hitstop phase - where the player can’t change their horizontal position for a few frames after attacking. (NOTE, however, that in AngEra the player can rotate during hitstop, so you can actually attack other enemies during hitstop.)
The player also gets about 200ms of invincibility after the hitstop phase ends. This is done to match the player’s perception of when they regain control and thus when it feels fair to get hit again. A consequence of this is you can just phase through bullets by attacking an enemy. Another possible consequence is that if bosses don’t react or change things up enough, you could also meat-shield them. There’s ways Angeline Era deals with this but that’s more for the discussions on poise and boss design.
I don’t think the game needs post-attack iframes. If you wanted to, you could make a bumpslash game with no hitstop and no iframes. I think this kind of game would feel totally different from Angeline Era (it would probably feel like you’re just tapping the enemies), but it would also presumably allow you to make an even faster-paced game? Hm. Worth noting, though, that having hitstop feedback makes it a bit easier to tactiley confirm you’ve hit enemies, especially when moving quickly.
Something worth noting about 3D action game design is that it’s pretty imprecise due to depth perception, so there may often be little adjustments or hacks in the player’s favor so as to make the game workable at all.
A nice thing about having some hitstop is that it allows enemies to catch up to you a little bit in those couple of frames in which you can’t move - as other enemy attack patterns still continue. I think this helps keep more of a sense of the whole room being your enemy, rather than just individual enemies.
Controlled Bump Frames (DI)
Kinda like DI (Directional Influence) in fighting games - there’s a toggle I have in Angeline Era for the player getting bumped back (either from being hurt or attacking) where you can sometimes influence the direction you’re getting bumped in after attacking. For the most part you have no horizontal positional control, although you can turn around while being knocked back in order to try to strike another enemy.
But in some cases where you’re being bumped for a longer time or at a higher speed, it creates a weird tension if you can’t influence this how you’re being bumped at all. Sometimes this is desireable (for stuff like Giant Hammer Traps, or for the humor of getting hit by a giant bomb), but a lot of the time in the context of combat it creates a weird stiffness. So in some cases I cheat a bit and let the player slightly influence the trajectory they’re being bumped back in.
Conclusion
That’s about all the hacks I can think of! Honestly I thought there were more but there don’t seem to be that many. I think this is because the code complexity of the hitboxes and interactions in Bumpslash is not very high. There’s probably some hacks in the gun code or enemy AI code, but that’s for another time.
There’s a handful of other hacks related to moving/wall collisions/jumping, but they’re a bit more general to 3D games in general. I still might write a bit about this for this book, though.
Thanks for reading!