DracoFighter's Controls
January 6, 2023 - Published
DracoFighter has a really simple control scheme. There are 4 buttons: Left, Right, A, and B. There's also sometimes C, but that can just be performed with A + B. This control scheme took me multiple months to decide on.
As I discussed in the first DracoFighter article, one of the original ideas for the game was to make a 2-player fighting game that would work on a single mobile device. I've played mobile games, I've played mobile fighting games. Mobile fighting games are absolutely awful, and most mobile games can be played with 1-2 buttons or swipes. The task seems impossible with such a complicated genre.
For me, the first task was obvious: do away with the mobile joystick. Those never felt responsive to me, and doing motion inputs on a digital joystick is a fate I wish upon no one. The second task was to lower the button count -- with two players on the same mobile device, too many buttons would clutter up the screen. You can see how these tasks fed into my main goal eventually becoming "make DracoFighter into the best possible boiled-down version of a fighting game."
However, what's the lowest number of buttons you need to make a fighting game? Let's look at some possibilities:
Zero buttons
This was one I hadn't considered until I was near completion, but it wasn't an option I was going to take regardless. The main methods would include motion controls (e.g. Wii Boxing) and taps/swipes (many mobile fighting games). The former would be awful on a mobile device, even single-player, and the latter would be difficult for same-device multiplayer. It also felt encouraging of mashing which I later wanted to discourage.
I will also mention twin-stick fighting since it's in Ape Escape's Monkey Boxing minigame, but that's a gimmick fighter we won't be talking about
One button
While brainstorming I downloaded a few mobile games to see possibilities. One game which I've lost the name of was a 4-player single-device game where your character would shoot and move automatically, and each player had a single button to jump. It was an interesting concept, but not really what I was looking for.
This idea is very much worth exploring in the future since it can lead to interesting possibilities, but it'll inevitably require either 1) very obscure controls (e.g. hold A to move, tap A to attack) or 2) some form of lack of control, both of which I didn't really want in my mobile fighting game
Two buttons
This is Divekick
Has the same problems as 1 button. Lack of control isn't necessarily a bad thing, but I wanted a game where you could have full control over a character's movement and attacks.
Three buttons
This is Footsies
I considered this for a good bit. Left, Right, and A would make for a decent fighting game. However, it meant you would only have 3 moves with normal methods (A, L+A, R+A), and it also discourages any method of jumping. There are definitely a lot of ways to get around this (maybe A is jump and that could be the attack!) but either way it could not create a full fighting game experience without resorting to obscure controls. Removing jumping quite literally makes a fighting game one-dimensional -- which again wasn't necessarily a bad thing, but not what I wanted to create.
Four buttons
Aaaaand that's why I eventually settled on 4 buttons. It increases the move possibilities by a lot (A, L+A, R+A, B, L+B, R+B, A+B, L+A+B, R+A+B), and those moves could include a jump. The only question is what each button would do.
(I also considered having an up/down button, but I decided that without physical feedback, it was generally difficult to know how high/low your finger was. Having only left/right made it easy to know which way your character would move)
First of all, it was necessary to me that there was a left and right button, if that wasn't clear from my earlier notes. This would allow the player to move and space properly, and without it, you wouldn't have a central part of a fighting game experience.
There were other necessary actions, however. Jumping, blocking, grabbing, and attacking. Without an up arrow, jumping had to be performed with a button. However, I didn't want to sacrifice A or B for jumping since that would significantly decrease the number of attacks. I eventually decided on the idea of Left/Right + (button) to be a jumping attack, which would add 2-dimensionality even if it removed the possibility of neutral jumps.
Blocking was an easy decision for me. Pressing back to block is in every fighting game. I also decided to add "auto-blocking" being inspired by Tekken, but it was necessary for slow-moving projectiles, since I imagined they would be awkward to block when walking back.
Grabbing was necessary to counter blocking. Initially I wanted A to be attack and B to grab, but that meant special was A+B. In order to jump, you needed a forward/back special, and that meant pressing R+A+B just to jump, which was ridiculous. I changed A+B to grab, and since most players don't like blocking much, it wasn't a decision I regretted. That left A and B and all combinations for attacks.
To be honest, I sometimes think this is a frankly excessive amount of thought to be putting into controls, but it was the result of fantasizing for months over a pipe dream concept. However, after much more experience as a developer and player, I've realized that putting thought into your control schemes is a really important thing to do. Bad control schemes will confuse and disorient a player, while good ones will allow them to experience it as smoothly as you hope it will. I'm still not sure if this was the perfect control scheme (many who've played DracoFighter have been confused about things like auto-blocking and the lack of a jump button), but it still allowed me to hit a lot of the goals I hoped for.
Vecderg