Wednesday, January 27, 2010

Backlogged Intro Post

Well, hello world.  Just figured I should get a post up on here and record a bit of how this experience is getting started.

My idea for this project came to me out of relatively nowhere during a long and stressful thought process and discussion about potential senior projects on a car ride with my parents.  I have memories of playing with my father a paper-and-pencil game to which he always referred as "Trace Race".  To over-generalize, I realized that the game - being simple yet challenging and thus engaging - could be translated to an online version in the form of a Facebook application, and through such a project I would gain a great variety of experience in technologies in which I am interested.

I don't want to reiterate my entire proposal document here (as I stressed out enough already while writing it) so I will just post a couple of links...

Here is the Wikipedia article which explains the basic premise of the gameplay.  I will be emulating the exact version I always played with my father, so a few specifics here and there may differ.

This Checkers application is an example of a turn-based game on Facebook which I find to have a simple, clean, effective, and attractive design (all of which are characteristics I want to achieve in my game).  One interesting difference it has from my plan is that it the board and pieces are not made in Flash (as I plan to do), but rather are apparently just well-positioned images.  In the case of this game, it works; I'm not sure about relative efficiency, but based on my HTML knowledge I don't think it would work for my game.

The one element that particularly worries me because it is a hole in my knowledge is how to implement the concurrent multiplayer experience I want.  Whereas with most of the rest of the project I have pieces of experience such that I'm pretty confident I can pull together what I want to do (aside of perhaps the Flash/Actionscript...), I have never before tried to figure out how an update or action of some sort by one user can automatically be pushed through to show up on other concurrent users' screens.  The only thing that comes to mind is to poll a database at some constant [very short] interval to look for a change which will then be pushed to the front end.  This seems rather inefficient...  So, to prove to myself that fast multiuser Flash gameplay was totally possible, I looked for an example and found this game called Guess the Sketch Challenge which is really just online Pictionary.

This is a brief informal introduction to my idea and inspiration.  I will post a version of my abstract soon, at Joe's request.