Greetings! I’m David and I’m here to talk about some issues in developing Severed. I’ve mainly been working on designing and refining enemies for the last little while, so I thought I would give a slightly in-depth look at some of the tricky questions that come up in designing for Severed’s combat system. First, you need to know two core facts about the game:
- Combat in Severed is touch-based, so we give almost the entire screen area over to letting the player slash freely with their sword by swiping. Most enemy attacks can also be parried by the same sort of motion, if properly timed and aimed.
- The player explores by tapping to move between ‘nodes’, which could be a room, a clearing in a forest, or whatever else. There’s no movement within a node, but you can freely look around yourself. When you end up in a node with enemies in it, you can still turn to face each one, but nobody can leave until the fight is finished (your standard Thunderdome-type scenario).
The stationary player but skillful reflex-based fighting means we’re splitting the difference in a unique sort of way between the highly-abstracted combat of a classic RPG and the more actiony, hands-on feel of something like a Dark Souls, 3D Zelda or Infinity Blade. And like any novel design choice, this is exciting to work on but crops up equally-novel challenges that might not have been dealt with in any game we could have used as a reference point.
One of those challenges is how to let the player deal with fights against more than one enemy. You can’t see or parry attacks from off-screen enemies, but off-screen enemies can still attack you, interrupting your action and doing serious damage. And you can’t run away, corner or otherwise outmaneuver them.
Each enemy is a big threat requiring your attention — you need to keep tabs on them all.
To solve this problem, combat is governed by an ‘enemy manager’. Rather than just wildly attacking you in parallel, which would often be super unfair, the enemies take turns attacking, dutifully queueing up one at a time like goons in a Bruce Lee group fight. For each attack an enemy can do, we specify how much time it needs to ready and then carry it out, and schedule the attack into the Enemy Manager’s queue. That doesn’t mean the attacks are necessarily easy to deal with (they can come as fast or slow as we choose), but the big benefit is this lets us easily prevent the player being put into impossible situations. (In principle we want someone playing perfectly to be able to get out of any given fight basically unharmed.)
Each enemy also has an icon underneath it. You can tap the icon to spin and face that enemy, but it also shows their status, previewing who’s about to come up next in the queue without the player having to look right at them. The icon slowly fills in with yellow, flashes when full, then flashes red, as the enemy readies and then executes their attack — at which point the player has to be there to respond.
Spiderface, above, blocks you until its timer fills. You get your chance to hit when it attacks – if you parry it, then it becomes vulnerable to counter-attack. Also, welcome to our ridiculous internal monster-naming.
A big goal for Severed has always been to have a large variety to the enemies encountered. There’s a menagerie of disturbing creatures in this game that the player will have to learn how to deal with through trial and error. Each one has some sort of unique behaviour — but the player not only has to learn their way around it, they also have to figure out how to act based on what the enemy’s icon is doing when it’s offscreen.
For example, Spinster here charges itself up continually — and when finished, immediately does an unblockable attack. To knock it out of this cycle, you have to hit it during the charging-up part until you break through its weak point. WHO KNOWS where that is though
Some enemies protect themselves while they’re idle and can only be hit after attacking and getting parried; some can be hit while they’re idle and can’t be stopped once their attack begins; some can be hit while idle but may punish you for it, etc. So if the icon only flashes just before the attack for Spinster above, you’d never have enough time to deal with it — you should be giving it attention over the whole time it’s idle. Since we really want this kind of variety in the game, we’ve had to make sure that the way an icon behaves helps the player and doesn’t rudely surprise them. The lexicon that’s evolved out of it is, generally, that we’ll start the icon flashing when the player should pay attention (and so far in our playtests this seems to get picked up pretty quickly). So for Spinster, we now have the flashing start well before its attack would actually go off, to remind you to respond.
It’s the kind of problem barely anybody playing a game will think about, but the developers spend days pulling out their hair over. But I think we’re pretty satisfied leaving it as is and letting the information the icon gives you remain slightly incomplete. Having some info is important as an aid — but in the end, it’d be great for the players to spend most of the battle actually looking at these crazy monsters we’re animating instead??
The Enemy Manager isn’t a total solution — even with it, there are combos of enemies that would be way nastier than others (for example, three Spinsters at once, all continually needing your attention, is a nightmare compared to three Spiderfaces, who only attack in turn). So despite the Manager, enemy encounters still need to be handcrafted for fairness. Treating these varied enemies and the enemy-icon system with consistency is a tricky balance to strike, and one of the areas where I’m finding (as is often the case) a grand one-size-fits-all plan tends to break down into more fiddly special cases the further you progress. Game development!