Gesture input in Infestation
One of the things I was most excited about getting into Windows Phone 7 was the opportunities that touch input provides. In my upcoming game, Infestation, I've made making full use of single and multi-touch input a core part of the game's mechanics. These features can be divided into two different categories - special moves and map navigation.
Special Moves
Most tower defense games put the player into a mostly passive role, where the towers do all of the work defending the objective. Infestation is similar on the basic tower concepts, but different in that the player can directly step in and affect the game by the use of gesture-based special moves. For example, I might draw an arrow pointing left and halfway down the screen to summon a crop dusting airplane to carpet bomb my attackers:
Later, I can draw a circle to bring on a mangifying glass that I can drag around the screen with my finger, laying a trail of burning destruction in its' wake:
There are a total of 4 different gesture-based special moves available in the initial release of Infestation, the aforementioned magnifying glass and crop duster, and also the flyswatter and the foot stomp. I didn't have any screens that I feel confident in showing for the last two, but stay tuned, that will hopefully change soon!The flyswatter will be triggered by drawing a square around the target, while an infinity sign activates the boot stomp.
World and Camera Navigation
In order to give the game's artwork its' full due, and to help provide a sense of scale, the game's camera is designed to scale between 0.5x - 2x. This is easily accomplished using one of the most-ingrained touch gestures a user will know: pinch to zoom out, stretch to zoom in. I've initially coded the camera to pan with a two-fingered horizontal or vertical drag. Some initial playtesting has indicated, however, that players are tending to play with both thumbs, much like a console controller, rather than with their fingers as envisioned. Maybe when I get some help screens implemented it will help educate players on input more quickly. I'm also considering adding a glowing mostly transparent colored bar drawn over edges that can be scrolled towards. Hopefully I can show that off soon in a gameplay video.