This is a challenge that has so far been quite hard for me to wrap my head around. How could you make an FPS with just 4 direction buttons to move and aim and a fire button?
I was thinking that you could move using the direction buttons at first, until you double tap in a direction to take cover and then start aiming with the directions buttons. To leave cover and start moving you double tap a direction button again. Thoughts?
Well… It’s possible but… Wouldn’t you rather aim and shoot using your mouse? Using your direction buttons to move and mouse to aim/shoot?
This tutorial might help you for making a FPS with mouselook (2.49b).
To make an FPS, you generally have to be able to aim, and I couldn’t really see aiming just using four keys. But, I don’t remember any game that does aiming like this, so maybe you should try it out and show off a new control concept.
Fours key? Okay, I’m game.
The four keys could be used individually for forward/backward and turning, with a separate combination of two keys for strafing, aiming up, and swapping weapons. Aiming could be accompanied by snap-to targeting, centering around the middle of the screen, to compensate for the lack of sensitivity. The cover system could be automatic, with double tapping an individual key to change cover and a certain key to exit cover; aiming and movement could be handled the same as out of cover, albeit the latter may be restricted to a single plane of motion. The fire button could, well, fire the current weapon…
Keep in mind that, under such constraints, contextual controls are key, their purpose can change depending on the circumstances surrounding the character at the moment of their depression…
Doom or castle wolfinstien style. the four buttons are forward, backward, and turn. Then there is the shoot button. The use of a script would allow auto aiming up and down. Try playing those two games, they’re free-ware to get an idea. Although there are more keys available in them I barely use them.
Anyway, what’s wrong with having lot’s of keys?
This is an interesting design problem, but I honestly can’t think of a single situation where you can run Blender but have just five buttons. I certainly believe that a good control scheme should be elegant and have as few buttons as possible, but for an FPS five is just too few to make something practical. Some sort of fine control like a mouse or if you really have to a touch screen or joystick is pretty much required (even Wolfensitein had mouse control)
That said, I would stick with forward/backward, turn left/right, and fire. Contextual controls can work in certain situations but usually they just make things needlessly complicated, and especially should be left away from the basic motion controls. Hell, even in Unreal with their double-tap dodging it’s a pain in the ass if I’m trying to strafe, then stop to let a shot pass me and then strafe again, and I end up dodging off a cliff. Ideally you might have one more button to lock on which would switch the left and right keys to strafing around the enemy closest to the center of the screen, sort of like in Metroid Prime (either way, height would be dealt with by the engine, like in old scanline FPS’s like Doom)
The reason the basic WASD plus mouse scheme has prevailed so much is because it’s about the purest, most efficient and functional FPS control scheme currently possible. No need to reinvent the wheel, especially if you plan on making it square.