Acorn Heroes

Rapid Prototyping Rule #6

by on Oct.03, 2009, under Coding

Notepad and Photoshop make great level editors.

[edit] : See the comments below – there’s a good argument for not even going this far.  Defining these things directly in code is a viable, and useful option.

One area where you often want a lot of flexibility, even during prototyping, is the ability to quickly tweak add a new elevator to the cafeteria level or make the slurpo-bot twice as fast.  Text, XML or image files make great data file formats for this sort of prototyping.

There’s plenty of standard code out there for loading text configuration files, XML data or pixel values from images.  And what’s more, your data is represented in a human readable form and comes with powerful tools for editing – including the IDE you are editing code in – how convenient is that?

Share with friends:
  • Print
  • email
  • RSS
  • Facebook
  • Twitter
  • Google Bookmarks
  • Digg
  • Reddit
  • StumbleUpon
  • del.icio.us

Related posts:

  1. Rapid Prototyping Rule #3
  2. Rapid Prototyping Rule #4
  3. Rapid Prototyping Rule #9
  4. Rapid Prototyping Rule #7
:

3 Comments for this entry

  • Noel

    I love your other prototyping rules, but I’m going to disagree with this one. When I’m prototyping, the last thing I want to do is data-drive anything. Loading an XML file to define a level or character parameters? No thanks. I prefer to have that in code. No parsing of any kind, much easier to change formats, and build times are not an issue when prototyping (if they are, that should be your rule #7: Iteration should be instant).

  • Paul

    I’d have to agree with Noel also. I like make my level “editor” a simple in-game interface that I can use to edit the game at run-time… a hot key or two, and a mouse-click to put stuff down. Can’t get any more immediate than that.

  • George

    Hmm, you both make good points. Rapid prototyping is all about simplicity, and I’d agree that you can’t get much more simple than a few int and double values to define the characteristics of a unit or whatever. My main motivation here was that I’ve seen people go to far greater lengths than a simple text file when it wasn’t needed.

    Having said that, it’s a trivial piece of code to write to load a text file where each line defines a row in a maze, or part of a platformer level. And the flexibility that comes from being able to quickly tweak and try out new levels can be a major boon – especially on a team with more than one person.

Leave a Reply