Indie Game Development - "Having fun, making fun"

Tuesday, December 27, 2011

Dev Log - Finding the Fun

With online multiplayer up and running, I've returned to the core of the game.  Its always exciting when you get a new game up and running, but after that initial excitment wears off - just how fun is it?  How long do friends and family hold onto the controller before setting it down?  What parts of the game did they really enjoy and what was a turn-off?  Finding the fun is the process of strengthening what feels best about playing a game while eliminating or steamlining everything else.  Its a time to try new ideas and discard them.  For my current game this has touched all the core game play mechanics - targeting, dodging, locomotion and controls.

A major goal of mine is to make the controls simple and intuitive.  My bias is to give players full control of their game characters.  Normally this is a good thing.  However my current game, like Kick'n It is a timing-based challenge.  For a casual game, it is enough that players dodge in time without expecting them to also select the proper dodge from a list of possible moves.  Yet I found myself expecting the player to do both.  Now when a player dodges an incomming object, the computer will automatically select the appropriate animation.

I've also streamlined attacks.  My tendency to give players full control meant that players had to choose a target, pick an attack move and aim.  It was simply too much for a fast-paced casual game.  Now when a player chooses an attack, the computer will automatically select the nearest target and lead the target if its moving.  The altitude of attacks is modified by a player's position, making locomotion a vital part of both attack and defense. 

Simplifying the controls enabled me to speed up the game, and freed player to focus on locomotion, and the timing of attacks and dodges rather than the mechanics of them. 

Friday, December 2, 2011

Dev Log - Victory!

Online multiplayer is complete!  It actually didn't take much time to implement the gameplay changes.  In order to get a full featured lobby I already had to wrap my mind around multiplayer, rewrite portions of the game to support 8 players, and implement both peer to peer and client server communication.  By the time I started hooking muliplayer communication into the gameplay code I discovered that I had already done most of the work. 

The conventional wisdom among developers is that online multiplayer is extremely difficult.  Perhaps it is.  But if you've already completed a game and learned how to do animation, storage and local multiplayer, you probably won't find it more difficult than other challenges you've already tackled.

In total, it took about 4 weeks to learn how to do online multiplayer and add it to my existing local multiplayer game.  I couldn't have done it without Microsoft's code samples and Shawn's well written blog post explaining when to use client server and peer to peer.  It should now be quite easy to include online multiplayer in my future titles.