Saturday, May 12, 2007

Danc's Miraculously Flexible Game Prototyping Tiles

RPGs love PlanetCute

So do platformers...

One of the commenters on the SpaceCute posts wondered what would happen if you visited one of those delightful spa-like planetoids that decorate our little galaxy of cuteness. Well, now you know. Here is a new set of graphics I'm dubbing "PlanetCute"

These are Lowest Common Denominator graphics. I put the challenge to myself: "What is a graphical style that is attractive, but are useful to both the widest range of developers and game genres?" Here's what I came up with for an answer.

Useful to the widest range of developers
Very few indie developers want to spend time figuring out how to use a set of graphics for their prototype. Often a developer would rather build their own format specific to their design and hire some to make graphics to spec or horrendously mangle free graphics to fit their needs. For completely original graphics, MS Paint in all its heavenly glory, is a extremely popular choice.

Some of the fault lies with the existing graphics, be they free sets scrounged from the internet or leftovers from a previous project. 3D graphics are notoriously difficult to convert between formats, are optimized for use on a specific platform and often present a confusing technological challenges to student developers. What coordinate system are they in? How are they grouped? How are they animated? Perhaps Collada will make it all seamless one day, but we aren't there yet.

Even 2D graphics are tricky. I've seen a simple system like auto-tile confuse new developers. There is typically a whole class of rules associated with any set of 2D graphics. What pieces go together? What is the render order? A set of a hundred graphics presents a puzzle that surprisingly few are willing to decipher.

The PlanetCute set attempts to wiggle past many of those problems.
  • Building blocks, not tilesets: Instead of having complex tilesets, each block stacks nicely with pretty much any other block. If you can understand Legos, you can understand how to put together these graphics. These tiles should be useful to children, not just uber-elite game gods.
  • Standardized format: All the graphics are uniform sized PNGs. The graphics will also work in almost any graphics engine out there that can do 2D sprites. Once you get your offsets right once, you never have to change them again.
  • Source files included: If you do need to make changes, I've included the source files. If you really need to change a color, go for it. If you need a big gem, just scale up the original. Everything is a vector so you'll alway end up with clean results.
Useful to the widest range of genres
These terrestrial tiles that be used to prototype a shockingly wide spread of popular 2D genres. Some that come to mind include:
  • Console RPG
  • Platformer
  • 2D brawler
  • Pacman
  • Sokoban (Please don't make this game again)
  • Match-3
  • Populous
  • Syndicate
  • Pong
  • Arkanoid
  • Marble Madness
I imagined that a basic engine that can deal with stacking blocks and a bit of collision detection could be easily adapted to new game types as desired.

This set is also quite amendable to original games. What could you make with destructible terrain, crowd AI and ancient treasures hidden several layers deep in the earth? I don't know, but I suspect it would be a heck of a lot more interesting than yet another Match-3 game. :-) And this set can handle all those technologies with delightfully low-fi aplomb.

Why does the world need nice graphics for prototyping?
The whole goal is to get you to focus on building up your game mechanics, not on polishing your graphics engine.

Many developers are driven to improve their graphics. There is a common moment that is seared into most developers brains. Do your remember that time you were working on a new idea for days, perhaps weeks. Finally you showed it to your friend. Your code was tight. The idea amazing. Yet your friend took one look at the command line interface and the rectangular graphics and his eyes glazed over. He was bored before you even complete your first sentence. That moment can be devastating.

For the follow up, you spent half your time making your prototype pretty. Unfortunately, to be overly blunt, you suck at drawing. You spent untold hours on something that didn't quite meet your vision. As a result, you didn't get a chance to polish and balance the game mechanics. You know...the part that makes a game fun. There is only so much time in your day and you wasted a good chunk of it on getting past that first 15 second impression.

The next time you make a prototype, use these graphics. If you can reduce the time you spend on futzing with graphics from 40% to 5%, you can put more time into those fun game mechanics you've been dreaming about. The magic is that your graphics will now look good enough to get you through the first 15 seconds of your demo. Your friend will perk up and stay engaged long enough to give you feedback all the wonderful work that you've put into your prototype.

Let me know if there is anything major missing. These were surprisingly fun to draw.

take care,
Danc

Download 'em here
Vectors: Ideal for Silverlight or WPF experimentation
Bitmap: Good for that vast world of pixel engines