Inventing a new control scheme for mobile FPS games

Jul. 18, 2024

When I first got a Steam Deck, I found a control scheme called Flick Stick in the settings. After learning how to use it, it inspired me to create a touch-based control scheme for mobile phones.

Here's my control scheme in action, on a mobile phone:

It's really fun to use, and I can hold my own against PC players, even though I'm playing on a cell phone.

One perk of this control scheme-- it doesn't require that the game support it natively. The "swipe pad" can be implemented behind only a virtual mouse and keyboard.

So, I forked Moonlight and implemented this weird control scheme.

"Swipe pad"

With this control scheme, the right side of the phone screen becomes a "swipe pad". Swipe towards any direction, and the camera will look in that direction.

For example, a swipe to the left will turn you 90 degrees towards your left. Like this:

The swipe response is expressive, with the speed and smoothing of the camera motion being derived from the speed and distance of your swipe.

The indicator at the bottom reflects the swipes and is very useful as a form of feedback when learning.

Weirdly, because any angle is "seekable" from a neutral position, you even get an advantage over mice in certain scenarios-- like an enemy being directly behind you.

Panning

After the initial swipe, you can pan the view by spiraling your finger to fine-tune your aim. The sensitivity during the pan is based on how far your finger has moved from the initial swipe point.

You might notice that the swipe pad can only aim horizontally. The gyroscope of the device is the only way to control the vertical axis.

Note that I'm shooting by using the side triggers built-in to my phone, but I've also found a few other ways to shoot that are almost as good without requiring a gamer phone.

Zooming

I added a zoom because the phone screen is small 🙂. This is auto-activated when your finger moves a certain distance away from its initial touch position.

In other words, long swipes make you zoom in.

In Valorant, fights are won by milliseconds of advantage. On a phone, you've only got two thumbs. The 300ms it takes for you to press a virtual "zoom" button and get back to aiming-- you will probably lose the fight.

The "automatic" zooming when you do a long swipe allows you to continue honing your aim in on the target, plus activate the zoom, all in one smooth motion.

At first, you'll trigger it accidentally-- but with some practice, it's actually useful and feels really satisfying.

Other stuff

The priority with this one was designing a competitive control scheme, but it's comfortable and fun to use too. It's hard to quantify how good it is, but I might try playing ranked eventually to get an idea.

A lot of work was also put into designing the movement controls. I hope to update this post in the future with some of the design on the left side as well.

I plan on integrating this control scheme into a something eventually, maybe a game jam game.