Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

Many games for touchscreen mobile devices use virtual joysticks for movement. This has many issues:

  1. You can't see/feel where the joystick is pointing when you are using it.
  2. You can't feel where the 'edge' of the joystick is - meaning, you can't know when you are reaching the maximum in any direction
  3. You don't always know when you're pressing the joystick. You can accidentally miss pressing it and not know, because you can't feel the joystick under your finger.

On the other hand, I've never been able to think of a reliable replacement for 2 directional movement that is as good as a joystick. Are there any?

share|improve this question
1  
I wrote a guide to touch-screen twin-stick shooters for Gamasutra, might be useful for any game devs out there gamasutra.com/view/feature/6323/… –  user17740 Sep 11 '12 at 21:35
add comment

6 Answers 6

up vote 2 down vote accepted

Rather than replacing virtual joysticks, which many people intuitively 'get'... you can implement them so that they are activated wherever you tap.

They joysticks can center around where you tap, within a region of 20% of the left and right side of the iPad.

Here is a great demonstration of responsive virtual iPad joysticks. (With riveting narration!)

share|improve this answer
    
Bastion for iPad has similar controls. Works totally great - solves several problems at once, like you don't need to be looking at it to use it and you don't obscure the screen with your fingers like you do when you tap directly on the playfield. –  Eugene Sep 28 '12 at 16:06
add comment

The game Mage Gauntlet on iOS offers an interesting solution to this problem which I found quite pleasant.

It basically amounts to touching and holding in the direction you want your character to move and then you simply adjust trajectory by tracing your finger around the screen - there's no visible joystick and you are no confined to any particular coordinates on the screen.

share|improve this answer
add comment

3. You don't always know when you're pressing the joystick. You can accidentally miss pressing it and not know, because you can't feel the joystick under your finger.

How about giving back a little vibration, to convince user, yes sir, you did press it?

P.S. I used to love those actual hardware joystick on Nokia 6600

share|improve this answer
add comment

An oddball control is the Gyroscope. In this video, Jobs is using it to control 2 dimensions. (It's not zooming in / out.) It's not that practical for gaming, but I figured I'd throw it out there just in case it solved your problem.

share|improve this answer
    
I've seen a few games which offer that as one of their control schemes, especially first person flying games. The phone acts as a sort of wheel. –  Brian Sep 13 '12 at 19:52
    
Thanks for the input, but yeah, as you pointed out, it's not really practical for quick & precise movements. –  you786 Sep 13 '12 at 22:51
add comment
  1. The user knows what direction the joystick is pressed in because their character is moving.
  2. This is solved (poorly) by drawing a joystick on the screen. But since your finger covers it (and you're trying to focus on the gameplay), this doesn't really help. One way to solve this is to cause the joystick to drag if the user overshoots it's maximum. So, the user can move their finger as far as they wish without consequence. This only makes sense in conjunction with #3. I recommend against this, though.
  3. This is traditionally solved by having the first place the user touches (within some large segment of the screen) becoming the center of the joystick. A user can recenter by lifting their finger and then placing it back on the screen.
share|improve this answer
add comment

The problem here is that a virtual joystick is just a joystick that doesn't work well. Developers use them because they're used to games needing a joystick, and a touchscreen phone doesn't have a joystick, but hey, you can just put one on the screen right? By doing that, though, you inherit all the weaknesses of a touch screen that you outlined.

The solution is to design your game in a fundamentally different way to take advantage of the hardware. Joysticks were only invented, after all, because there was no way to interact directly with the game world at the time. This problem doesn't exist on touch screens; your players can touch game objects and manipulate them directly with their fingers.

Why use an abstract, indirect control system on a device that's designed for direct, intuitive interfaces?

To answer your question specifically, why not have the player simply touch where they want to go? This works particularly well in top-down games, but I'm not sure what your game is.

Edit: Just wanted to clarify that some games do require a virtual joystick, but these are not games well suited to a touchscreen.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.