I finished my game control-related seminar. There is one thing I learned while doing it that shone brightest through the rest. The control requirements for a first person shooter.
First person shooters require that the user is able to do three things simultaneously: Move, aim and fire. If the input method cannot offer those controls, a typical first person shooter will feel clunky. Keyboard and mouse can do it: The player can move with WASD, aim with mouse and fire with Mouse 1. They can even jump, use the action button, reload and theoretically do ten different things, one thing per finger. Gamepad can do it: You can move and aim with thumbsticks and fire with the triggers. Wiimote can do it: You can aim with the remote, move with Nunchuck-joystick and fire with the trigger. But a touchscreen can’t do it.
Let’s assume an iPhone. For input, we have a touchscreen, one main button near the touchscreen and two buttons, for volume up and down. The main button is reserved for the phone and cannot be used by the game. Same with the volume button. So we are left with just the touchscreen. Let’s try to play a first person shooter. The bottom corners of the screen are reserved for virtual thumbsticks, so manipulating the left corner will move the character and manipulating the right corner will move his gaze. But as an enemy appears on the center, we wish to shoot it. The question is with what? Both our thumbs are in use, and the rest of our fingers are used to hold the device. Do we tap on the screen to fire with our thumb, relinquishing control of either our movement or aim? Do we tap on the screen to toggle firing mode on, possibly wasting bullets? It is a hard question, one which is no doubt in the mind of many iPhone developers.
I thought about some solutions, and came to one conclusion: Without using another finger on a physical button a normal first person shooter will not work. To solve the problem, deeper changes must be made.
What does a player do in a first person shooter? He runs around, aiming at anything threatening. When an enemy appears in the targeting reticule, the player opens fire, dodging return fire and keeping the enemy on the center of the screen. At some point the enemy dies and the player ceases shooting. We only fire when the enemy is in the center of the screen. Can’t we automate that process?
Let’s imagine a gritty and realistic first person shooter, where glorious US marines fight against evil middle eastern terrorists. Since real weapons tend to be at least semi-automatic, we will not need to consider splash damage weapons. We move with the left thumbstick and aim with the right thumbstick. When an enemy comes in the middle of the screen, the player automatically fires at it. The enemy does not die immidiately, nor does he soak up bullets like a sponge. He instead attempts to run to a cover. We keep the enemy in the middle of the screen, firing at him. At last, just before the corner, he suddenly jerks forward and falls down as a bullet pierces his flesh. We run for cover and tap the screen with our right thumb. The player’s viewpoint goes down and we see the player’s hand and torso as he reloads his gun. Suddenly, we hear loudly whistling bullets. Unsure of the direction, we continue to head towards cover. The whistling goes louder and louder, until finally it ends with a wet snap and our viewpoint goes to the floor and the screen fades to red.
So what does our hypothetical game solve? First, we only need two active fingers to play it. We only need to move and aim, still gaining essentially the same experience as with any other first person shooter game. Second, since we are not using our superior pixel-perfect aiming skills, we can cheat a little and eliminate the hit point stupidity. Whenever the player shoots at an enemy, it reduces the targets’ Karma. When the Karma reaches zero, the enemy gets hit and dies. If we lose sight of the enemy, he starts to slowly gain Karma back. Voilá, regenerative health mechanic with stupid parts ripped off.
So. An original mechanic for a first (or third) person shooter with no other input than a touchscreen.