top of page
Anchor 1

DESIGNING A ONE BUTTON (ONE SWITCH) FIGHTING GAME

Traditionally fighting games such as Karate Champ, the Street Fighter  series, Mortal Kombat, Tekken, and many others require many inputs from a controller, often requiring the player to input a complicated sequence of directional inputs and button presses to perform attacking moves and flashy combinations of attacks.

Many players like the fact that it takes skill, often developed over a long period of practice, to be able to perform these moves and combinations (known as combos in the fighting game community) at will, often requiring timing skills accurate to a single frame of animation!

​

So then, why make a one button fighting game? Well, for one thing, not everyone (e.g. casual gamers) want to spend the many hours learning a character's move set to become reasonably proficient, but perhaps more importantly, not everyone is physically able to  meet the relatively high skill levels fighting games demand - players who are motion-impaired for example.

​

Motion impairment covers a wide range of disabilities; arthritis, spinal muscular atrophy (SMA) and cerebral palsy are just a few examples. In some cases, motion-impaired gamers also have other disabilities such as cognitive impairment and/or visual impairment.

​

When I made the fighting game KARATE - Way Of The Fist   I designed it to work with a standard gamepad using a traditional control system, however I've wanted to make the game accessible to a wider audience. The necessary changes meant that I needed to make a separate version: KARATE - Way Of The Fist  1 Switch Edition   (I'll refer to this as KARATE   for the rest of this article) .

​

So what considerations need to be made to make a fighting game accessible?

​

The most obvious consideration: A simplified control scheme - hence the 'one button' . 

​

KARATE - Way Of The Fist 1 Switch Edition: demo of the game currently in development. The game uses a single button (left mouse button or space bar) to control the player's fighter (dark haired fighter).

There are two elements in my approach to a 'one button' control scheme. The first element is direct control, i.e. a response to the player's input. I designed it so that the program responds to the control button's 3 states:

1. Unpressed

2. A short press (a tap)

3. A long press (a hold)

​

The second element to this is contextual - i.e. to make the outcome of those button states be dependent on  what is happening in the game at the time the button is pressed/unpressed .

​

BUTTON IS UNPRESSED:

Fighting games generally start with the combatants at a safe distance from each other, this is the case for

KARATE . Both fighters will move towards each other by walking (and in some games jumping or dashing are possible options).  Moving toward your opponent is generally desirable (unless your game features projectile attacks) and can be done automatically as long as two conditions are satisfied:

- The fighters are out of range for an attack to hit (contextual)

- The button is unpressed (direct control)

​

So the combatants have moved into range of attacking each other - what next? There's generally three options available to the player: Attack, defend, or move out of range.

 

Defending in KARATE  can be done by blocking or dodging.

You can block high, mid, or low attacks but by blocking at one level you are open to attacks to uncovered areas - a high block will leave your mid and low sections vulnerable.

Dodging will take you completely out of the way of your opponent's attacks but you are vulnerable as you recover from the dodge.

​

Dodging is implemented by the program satisfying the following conditions:

- The opponent has started an attack (the animation sequence is progressing up to the point of contact with the           player's fighter) (contextual)

The button is unpressed (direct control)

​

BUTTON IS PRESSED:

Because defending is a reactive process, reaction speed is important for successful defence in both fighting games and real life martial arts. In order to maximise a player's reaction time I designed the defensive process to be as simple as possible - button is either unpressed (dodging, see above) or pressed (blocking).

​

Blocking is achieved in the game so long as these conditions are met:

- The opponent has started an attack (the animation sequence is progressing up to the point of contact with the           player's fighter) (contextual)

The button is pressed (direct control)

​

So I've covered defence, that leaves the other two options - moving out of range and attacking.

​

Moving out of range could be considered a third defensive option but perhaps the least desirable as you risk being backed into a corner, never the less, to be able to move back is important. In KARATE  moving backwards is done when the following conditions are met:

- The opponent is not attacking or  the  opponent is completing an attack (the animation sequence is in the

   recovery phase, the point of contact with the  player's fighter has passed) (contextual)

The button is pressed and held for a long press (direct control)

​

And so we come to attacking - perhaps the most defining feature of a fighting game!

​

Attacking moves in fighting games can be broken into three phases:

1. The Build up. Using a basic punch as an example, the build up  phase would be an animation showing the                         punching arm extending towards the opponent.

2. The point of contact. Using the above example, this is the point when the arm is fully extended and the point of                     contact (knuckles) would have a zone or 'hurt box' attached and checks for contact with the opponent's                            vulnerable areas (face, body, etc.) using a 'hit box' would be made.

3. The recovery phase. This is the phase when the extended attacking limb is withdrawn and made ready to strike          again. Using the punch example, the animation sequence shows the extended arm being withdrawn and the                combatant returning to their basic fighting stance.

​

The first two phases are dangerous to the target combatant, during the recovery phase the attacker is vulnerable to counter attacks.

​

To launch an attack in KARATE  these conditions must be met:

- The opponent is not attacking   (contextual)

The button is tapped (held for a short press) (direct control)

                                                                                            OR

- The  opponent is completing an attack (the animation sequence is in the recovery phase (contextual)

The button is tapped (held for a short press) (direct control)

​

The tap or short press is important as it allows the player the ability to quickly respond and attack when the opportunity presents itself - as a direct attack under the first set of conditions, or as a counter attack under the second set.

​

Generally in fighting games the player chooses the attacking method to use - this could be a punch, kick, sweep, flying kick, etc and the player's decision is often based around range and/or creating opportunities with a light, quick attack to follow up with a more punishing but slightly slower attack.

 

In a previous one button fighting game I made (download it from oneswitch.org.uk here)  I allowed the player to select their next move, however I feel this was a rather clumsy method. In KARATE,  the move is selected automatically and is dependent on the range and level of the player's fighter; more complicated moves are added to the fighter's move set as he ranks up. This allows the player to take part in a faster paced match while increasing their chances of landing a successful blow.

In future articles I will discuss menu systems, difficulty settings, game speed and other possible features to make the fighting game more accessible.

bottom of page