Tuesday, June 30, 2009

June Monthly Checkup

Yep, another month has come and gone. Sadly I still don't have a finished game, but I do have some cool demos to show off in upcoming posts. I'm up to chapter thirteen (of twenty-two) in Luna's Introduction to 3D Game Programming with DirectX 9.0c: A Shader Approach and am learning a lot, but it takes a while to work through the chapter exercises. I'm also in the process of taking Ian Schreiber's free online game design course. My portfolio website is nearly completed; I just need to find a better host before posting the link here on GDJ.

So it's been yet another busy month of learning and experimenting, all while prepping for our big move to NC in August. After we get settled I plan to join the Triangle IGDA chapter so I can get serious about that whole networking thing.

Monday, June 29, 2009

Speedrunning

The Escapist recently caught my attention with this article on speedrunning. If you're not familiar with the concept, some people spend WAY MORE time trying to master games than you or I do. In fact, they spend countless hours and thousands of lives (digital lives of course) trying to master game levels, determining the most efficient paths to complete a level - or in some cases the entire game - in the shortest time possible. There are plenty of other worthy examples on YouTube; just search for "speed run" after the title of your favorite video game.

Would you have the patience to master this??? I doubt I would.

First Day of Class

As mentioned some time ago, Ian Schreiber's Game Design Concepts course began today and I personally believe it's off to a great start. I love reading things that make me think in a new way or help me understand concepts with simple examples. For example, have you ever played a game called "three to fifteen"? I had never heard of it and bet most of you haven't either, but once you read that first lesson you'll realize you've probably played it many times!

I know this image is far below par in terms of graphical work typically posted on this blog, but it's actually a very rudimentary game design I created in a matter of two minutes! Ian describes how simple it can be to create a game, and honestly anyone can do it. I call my game "Rat Race", with the concept being that two rat tokens are placed at the start and their goal is to be the first to get to the cheese. Each player must roll the die and get the numbers in order to advance (e.g. roll a 1 to advance to place "1", then roll a 2 to advance to "2", etc.) sequentially all the way from space "1" to the goal at "5". If a player rolls a "6" they send their opponent back to the start position but also forfeit their turn. They do not advance if they roll a number out of turn (e.g. roll anything other than a 1 from the start position).

As Ian points out, mine isn't necessarily a good game, but it proves anyone can do it and I look forward to learning more about designing good games.

Monday, June 22, 2009

Game Development Process

I read the article How a Game Gets Made in the free online edition of Game Career Guide magazine some time ago. It's quite a good read for anyone interested in the process, and I believe it's important for me as a programmer to understand what role I will someday fill as a game developer. What follows is a transcription of notes I took while reading to summarize the process; note that not all possible roles are covered and the steps are not listed in sequential order.

  • Preproduction
    This is the phase where core game design decisions are made, game elements are prototyped, and the game story is developed. A basic prototype of the game is developed quickly and shown to the producer who either scraps the game or gives it the go-ahead to move into production.
    • Designers document objects, characters, levels, enemies, NPCs, etc. for the game
    • Artists work on character designs, level concept art, and storyboarding
    • Programmers work on tools, document technical specs, and perform risk assessment
    • Producer determines a production schedule and milestones

  • Production
    This is the phase where the game is fully developed based on preproduction planning and detailed design documents. Some experimentation is allowed as long as it improves the game. The development team follows a "production methodology" to keep track of and divvy up remaining work.
    • Must determine dependencies early to complete child tasks sooner and keep teams independent (max efficiency)
    • Artists get a head start creating/texturing character models and world props (cars, buildings, crates, etc.)
    • Animators generate animations for character models
    • Programmers work on core functionality and data manipulation
    • Level designers create rough sketches of all levels in the game
    • System designer plugs in characters and tweaks animations and gameplay
    • Sound designers work on effects, getting voice actors for character dialog, and music tracks
    • Team meets periodically to review overall progress of the game
    • At 2/3 of production timeline additional staff is brought in for QA testing; most features are implemented so it's time to squash bugs

  • Postproduction
    Postproduction is all about getting the game into the hands of consumers.
    • Final build of the game (the Gold Master Disc) is printed
    • Marketing publicizes the game to popular game websites, magazines, and as TV ads
    • Publisher handles game manual and box manufacturing, and has a distributor set up to deliver the game to retail stores
    • Developers may be tasked with creating donwloadable content (characters, costumes, levels, etc.) to update and extend the game