Search This Blog

Sunday, February 6, 2011

Tools

No,  I'm not talking about the screwdrivers and hammers in Gubble.  It's the software tools that game developers use.  Even early on during development it's important to select good off-the shelf tools and to decide on which custom tools to develop.

First,  a bit of history.  In the 80s most game developers used a compiler or assembler and the artists had a paint program.  Sound was often done using custom programming inside the game,  or maybe we had some special audio tools such as RPM (Rusty's Pokey Music System),  internal to Atari.  In RPM you typed in the notes and their duration,  like this:  C sharp, quarternote.  I spent many hours typing in notes from my piano sheet music collection.  Level editors were in their infancy,  or they didn't exist at all.  I invented a scripting language on top of FORTRAN to generate the ramps, elevators and other data patterns for the Crystal Castles levels.

In the 90's we saw the advent of real-time 3D and the 3D editors such as 3D Studio.  At my old company Bitmasters we used 3D Studio to prerender rocks for the SNES version of Rampart.  The first real breakthrough in this area was Donkey Kong Country for the SNES,  with great 3D animation,  all prerendered and stored in very expensive ROM memory.

For the original Gubble in 1996 we wrote a custom level editor integrated with the 3D geometry coming out of 3D Studio.  We used the editor to lay out the levels,  then fed them to 3D Studio for the real level rendering.

Now,  fifteen years later, we have a huge assortment of off-the shelf tools available for purchase,  and some very good things for free.  For ActionJump I selected Blender, Unity3D, Visual Studio C# Express and Gimp2.  They are all free,  which is truly great.  It even opens the possibility of letting customers in on the act.  We could,  for example,  allow users to write custom content using these tools and set up a way to distribute this content to the rest of the players.

Still,  there is something to be said for writing a custom level editor rather than just using Unity or Blender to lay out the levels.  This is the approach used by Halo with Forge and in Little Big Planet. So that's the plan for ActionJump as well.  Not only are we going to use the custom level editor to make our levels,  the level editor should be an integral part of the game so that anyone can use it to have fun making their own levels.

This also has an impact on this blog.  If we have a level editor available early on then the readers of this blog can make levels during development.  They would truly become a part of the team,  which is a scary prospect,  but a good scary.  This certainly takes me out of my comfort zone.

Next time we'll get back to working on the game itself.  It's not ready for a level editor just yet,  but it's good to know that it's coming,  and that it'll be integral to the game.


--  fxl





No comments:

Post a Comment