Directory of All Essays

Saturday, March 14, 2009

Danc's Miraculously Flexible Game Prototyping Graphics for Small Worlds

Don't you think it is time for some new free graphics?

The originals
The original set of miraculously flexible prototyping graphics have been out there for a couple of years now. In that time, they've been used in mini-MMO's, shooters, RPGs, platformers and dozens of various projects that lurk in the dark squishy nooks of the ever fermenting, communal indie mash.

However, they had some issues.
  • They were in a format that wasn't readily accessible to most users. In particular Flash games didn't make as wide a use of them as I would have liked.
  • They required a rather tricky placement system that most tile based engines had difficulty handling.
  • Very few games used the shadows system and without the shadows, they tend not to look very good.
There were also a couple other areas I wanted to explore.
  • HD pixel art: There is an emerging artistic style that showed you could keep the intricate iconic style found in pixel art, but modernize it in such a way to take advantage of the crispness found in modern high resolution displays. The result found in games like Pixel Junk Monsters, Patapon, and Loco Rocco is distinctly game art. It tends to be 2D and highly evocative. But is also is information dense and full of distinct iconic symbols that have meaning during game play. When there is a trade off between realism and functionality, functionality wins.
  • Vector art: I've done immense amounts of raster art over the years, but lately I've been playing with more vector art. The tools have gotten to the point where you can do some pretty nice stuff rather rapidly without needing to ever go to bitmaps. They are rendered natively in Flash or Silverlight and you can play with scaling without worrying about loss of detail.
  • Arbitrary placement: Once upon a time, you needed to use little square tiles for everything. Nowadays, there is no real need to make a tile based 2D engine. With arbitrary images with full alpha and lots of fill rate, you can put together a game like a sticker book. Drop down your graphics at arbitrary positions and layer like a madman. Games like Aquaria look great and tiles are nowhere to be seen. There's a good tutorial on the topic here: http://gametuto.com/in-game-c-map-editor-tutorial-with-indielib-engine-that-dosent-use-tiles-but-pieced-images-like-in-braid-or-aquaria-games/



Small World

So I started a new graphics set that took all these into account. The theme I chose was the 'Small World', an intimate place of green trees and blue ocean seen from above. For ages I've been fascinated by tiny worlds that you could imagine keeping like a bonsai garden on a table top.

What types of games can the Small World graphics be used for?
  • Turn-based strategy games
  • Real time strategy games
  • RPG's
  • God and Sim games
  • Tower defense (the original inspiration for this set was Pixel Junk Monsters)
  • Crazy innovative games that will shock and amaze the world.
What does the set include?
  • 70 high quality sprites
  • The original Illustrator CS4 .AI file
  • The exported Flash CS4 .FLA file
  • The exported Flash CS3 .FLA file
  • The exported Flash 10 .SWF file (with linkages)
  • Land
  • Forests
  • Buildings
  • Dialogs and buttons
Having the source files allows you to easily manipulate and edit the graphics so you can make variations or combine pieces together. You should have enough pieces to easily prototype attractive little worlds full of forests, fields and cities.

What doesn't this set include?
  • I have some characters that fit this set, but those will be coming along at a later point.
  • I haven't had time to cut out all the bitmaps. This is coming shortly unless someone else cuts them out first.
  • Other formats: In general there are a billion minor formats that all have their passionate proponents. Convert at will. :-)
The License
Much of the email I get involves questions about how various graphics can be used. Though I love hearing from you, it has become apparent that the license needs to be clarified so that I can spend more time making stuff for you and less time writing back about the legal issues.

A second issue is that there have been some unfortunate incidents where players have taken talented developers publicy to task for 'stealing' my artwork or 'copying' game designs. 'Open source game designs' are admittedly a cutting edge concept in our IP-clutching world, so there is some education to be done.

As of today, I've created a separate Lost Garden Licensing page that outlines the license for these graphics. If you plan on using these graphics, be sure to read it. The basics are that they are free to use in both commercial and hobby projects under a standard Creative Commons Attribution license.

The goods
So what are you waiting for?

I'll be releasing some prototyping challenges that make use of these graphics in the future, but for now just have fun and give them a shot. They were a blast to make.

take care
Danc.

PS: I also included graphics that allow you to make arbitrarily sized islands composed of splotches of land stuck together. This is a tricky technique that only advanced users will undertake. First lay down the water. Then lay down all the Land-Bottom graphics. Then lay down all the Land-Mid graphics. Finally draw all the Land-Top graphics. By layering the graphics in this order, you can create islands that merge together visually.

Labels: , ,


Read more!

Sunday, December 02, 2007

How to bootstrap your indie art needs


A goodly number of indie game developers are lured into Lostgarden.com by the free game graphics. Every few days an email pops into my inbox, "Hey, could you draw the graphics for my cool game design idea?"

I'm honored more than you can imagine when I get such a letter and they mean a lot to me. Unfortunately, I have my fingers in so many projects at the moment that squeezing in an additional graphics job wouldn't be doing anyone any favors. Still, it bothers me that talented people with amazing dreams can't make their games due to a lack of graphics.

Here's a run down of several techniques that help you get your game finished without being blocked by the graphics bottleneck.


Build a game that fits your level of art skills
The first path that you should go down is to build a game that fits your level of art skills. If you are a programmer and can only make squares, make a game that uses squares as graphics. It worked for Tetris and it can work for you.

At a functional level, graphics exist to provide feedback to the player, not to wow them with Hollywood-esque delights. Put those dreams of cinematic fantasms to the side and focus on the game mechanics, the interface and the level design. If you can nail all of these and you only have little ASCII art, people will still flock to your game.

Some successful games that designed the project around the developer's lack of traditional graphics skills include:
If they can do it, you can certainly finish your game without relying on an artist for graphics.

Use free graphics
The next step up is to use free graphics. There are thousands of game graphics out there on the web. Admittedly, they have problems:
  • They may not be the most attractive. "Dude, these free graphics are totally sucky compared to StarCraft."
  • They may not fit your exact mental vision. "No, the Xenli Sorcesses has four silver spikes on her bosom armor, not two. It is completely wrong!"
  • They may not be complete: "I really need a female knight and and they only supplied a male knight! The end is nigh!"
  • Other people might be using them in their games. "Argh, now my RPG looks just like the one done by that guy in Australia. *sigh* Now I will never be l33t."
My heartfelt recommendation is that you get over it. None of these is really a blocker. If you can build a game with limited art, you can certainly build a game with a few carefully chosen bits of free art. Here are some answers to common complaints.
  • You aren't Blizzard. That's okay. You can still make a fun game.
  • Design is about coming up with great solutions in the face of complex constraints. In order to design a great game, you will need to adapt your vision to reality a thousand times. Practice your problem solving skills by using free game graphics in the best way possible to get as close to your vision as possible.
  • If the set isn't complete, get creative! If you need two knight graphics, colorize one blue and one red. If you need a dragon boss, colorize one of your knights black and change the villain to be the Dark Knight. Even primitive graphics skills can triple the number of usable graphics if you show a little initiative.
  • You browse free game graphics archives, but your customers do not. Out of the thousands of people that play your game, only a small handful will recognize that you are using free graphics. The only ones who care are typically merely would-be game developers snobs. Ignore them. That is easy enough.
Here's an example of noted game developer Sean Cooper using my free tile graphics for his Flash game Boxhead. Sean has worked on Powermonger, Dungeon Keeper, Magic Carpet and Syndicate. It is instructive to observe how he uses free graphics to give his game a leg up.



Pay for competent graphics
If you absolutely must have quality custom graphics, you are going to need to pay an artist real money to produce them. There seems to be an odd opinion that that artists sit around all day doing nothing and whenever someone asks them for a painting, they scribble for a few moments and then non-nonchalantly hand over a masterpiece. Good art takes time and skill. Drawing a good tile set might take 20 or more hours. Drawing a simple background might take all day. If you aren't willing to pay for their very valuable time and effort, most competent artists will go work for someone who will.

Prices vary dramatically depending on the type of art, the quality of the art and the reputation of the artist. Expect to pay anywhere from $20 to $60 per hour. The best bet is to ask the artist what their standard rates might be. You can always negotiate, but remember if you squeeze the artist too much, you increase the chances that they will put your game on the back burner when a more appealing opportunity comes along. Negotiating for royalties is another option, but since 90% of the reason that games don't get finished is because the programmer flakes out, I would hope that most artists would be rather wary of this path.

There are numerous ways to bootstrap your art budget if you have your heart set on custom artwork.
  • Create art-free games to fund games with more polish. Release a version using free art. If it sells, reinvest the profits in creating the same exact game with better graphics.
  • Set aside a certain amount each month to pay for graphics. One fellow I know is setting aside 300 bucks a month to pay for game art. That will buy him about 2 days worth of a cheaper artist's output a month, but if he plans well enough and limits the amount of extravagant graphics in the game, this could be enough.
If you are looking for artist, you can find a reasonable collection of game artists for hire at these links. Just keep in mind that they all expect to be paid.

The one technique that doesn't work
The most common strategy I see used by would-be developers is the only one that doesn't work. They pray that they can find an amazing artist who will work for free on their game. If only they hang out on enough forums and email enough artists and beg loudly enough...a godly artist will drop from the sky and gift them with amazing artwork.

It generally doesn't happen this way. Good artists can generally find work that pays in cash. Most likely what will happen is that you'll make a deal with a starving student who immediately leaves you in a lurch as soon as something that lets them eat comes along. They aren't being mean. They are just hungry.

So the would-be game developer mopes about the message boards, complaining about artists leaving their projects and how artists constantly ask for real money. Yet despite the substancial energy that goes into these activities, I've yet to see prayer or complaining ship software.

The big lesson
Out of all this discussion about graphics, never lose sight of the big picture. The single most important thing is for you to finish your game. Iterating towards completion is the root of all practical knowledge about game development. Putting a complete game in the hands of player is how you'll learn to make your future games shake the world to its core.

If you are telling yourself "Oh, I can't complete my game because I don't have an artist," be honest with yourself. You are making excuses. Graphics are not an impediment to making a great game. Do what ever it takes to finish your game.
  • Design a game that doesn't need professional graphics.
  • Use free graphics when possible.
  • Set up a rational budget to purchase custom graphics from a professional artist if needed.
Best wishes,
Danc.

Labels: , , ,


Read more!

Sunday, August 19, 2007

Tree scribble



I've been filling notebooks with extensive sketches of worlds built out of a single homegrown tree. Houses, monuments, clouds, vines and more, drooping, draping and bursting forth in a blossom of growth.

Last night I had a chance to jot down some of the graphics in Painter. My few hours of effort resulted in a basic tree trunk, some foliage and a little girl. Overall, I suspect this would be a pretty easy game concept to get up and running.

Further implementation thoughts
Harold stopped by last week and we brainstormed a little on the Tree Story idea.
  • Collision detection: The foliage uses 1/2 circles as a the collision detection zone instead of the typical rectangles you find in most platform games. This should give the worlds a bit more of an organic feel and results in some simple controls. For folks that have been playing with the Space Cute graphics, you may be able to reuse your existing collision detection systems.
  • Bundling to create platforms: By overlapping a few simple foliage brushes, you can create interesting and realistic trees.
  • Blurry parallax layer for depth: You can create a feeling of depth by putting blurred foliage on a parallax layer behind the main action. Scroll this layer at a slower pace than the main layer that the player is on and it will seem like the scene has perspective.
If anyone is interested in playing with some of the graphics, let me know and I can upload a few in a more reasonable form. Before implementing images, I'd recommend first creating two simple prototypes:
  • Movement prototype with primitive half circles for terrain and a blob for the player to test out movement and the 'fun factor' of the design.
  • Tree prototype: Use long rectangles and half circles to see if you can auto-generate interesting trees.
Hope you are well on this rainy Seattle sunday afternoon. :-) I think it is time for a bit of tea.

take care
Danc.

Labels: , , ,


Read more!

Sunday, May 27, 2007

CuteGod: A prototyping challenge


It is once again time for a prototyping challenge! The rules are the same. You are an elite programmer that wants to make something fun without spending ten years in art school learning how to draw stick figures. I provide some easy-to-use graphics and an intriguing game design for you to riff upon. Send me the links to your masterpieces and I'll post them for folks to enjoy and critique.

This time, we are tackling an ancient, yet still fascinating, genre that is long overdue resurrection: The God Game.

Back in the day, there was a game call Populous where you played a god. You mucked about with the land, zotted unbelievers and created a verdant landscape populated with bustling villages and happy followers. This week's design, CuteGod is a god game on a smaller, more casual scale. I've reworked the mechanics to be more prototyping friendly, but the spirit is the same. You play a simple village god who seeks to make his people happy by fulfilling their heartfelt prayers.

I've divided the challenge up into two sections. The first is the core mechanic and the second challenge adds a bit of depth to the game. We are using the PlanetCute prototyping tiles and the set has been updated with 20 new objects in preparation for the challenge. You can download them from the resource section of the post.


Challenge Part I: Core Mechanics
Have you ever experienced the simple joy of sorting your Legos? This is a broadly enjoyed activity for many folks whether they express it through a love of beading or shopping at Organized Living shops in the mall. The core mechanic in CuteGod is one of sorting tiles and completing simple patterns.

As with all mechanics, the written design is a starting point. Prototype, experiment and see what works. The idea is to create an activity that is intrinsically pleasurable and can act as a foundational activity for other game mechanics.

The map
The land starts out with randomly sorted PlanetCute prototyping tiles, piled up to five levels deep. Tiles can stack up on one another to form hills and valleys.

There are several types of tiles:
  • Basic tiles: There are a few basic tiles, grass, dirt, water.
  • Rare tiles: Each basic tile has a rare analogue such as emerald, ruby or sapphire. There may be a handful of these tiles in the entire level and are used to create advanced patterns or increase the completion bonus of existing patterns.
  • Immovable tiles. These stone tiles create the foundation of the level.
Player action
You can drag tiles around. Tiles can be dragged on top of other visible tiles. By dragging tiles, you rearrange the map to Your liking.
  • Picking a tile plays a cool sound effect and the tile is sucked up into the air.
  • An indicator shows where you can drop a tile. As long as you can touch it with your cursor, you can drop a tile there.
  • Dropping a tile has a quality clunking noise. The tile drops into place with a small bounce.
The villagers
Sad villagers wander about the map looking for a place to live. If you click on them, a thought bubble appears showing you a pattern of tiles they need in order to build a happy home. This pattern is known as a prayer and acts as a mini-mission. It is your job as a god to do something about such heartfelt desires. Clicking on the thought bubble automatically accepts the prayer.
  • Finding villagers and accepting their prayers gives you a small amount of points. A small animated heart floats up from the villager to let you know this is a good action.
  • The prayer pattern flies over into the prayer list.
Patterns
Patterns are a set of tiles in a prearranged order. For example, a simple pattern might be a grid of 4 dirt blocks arranged in a square all at the same level. Completing a pattern builds a structure and gives the player points.

Prayer list
Along the side of window is a list of patterns that various villagers want you to build. This helps you keep track of all the requests.

Partially completing a prayer
As you build out the pattern, the tiles glow when they are assembled in partial patterns. The appropriate prayer pattern also glows. This intermediary feedback lets the player know that they are progressing along the right path.

Completing a prayer
When you complete particular pattern, the tiles glow, the villager smiles and bounces over to location of the pattern. Blocks rain down from the sky and assemble the house. For each block that falls, you get points. When the house is complete, particles go off and flower spring up around the house.
  • The finished house will pop out the villager upon completion. He will be happy.
  • Some advanced patterns will also pop out a treasure box upon completion.
Simple levels and winning conditions
CuteGod is about playing in a sandbox, not so much about winning. However, it is easy to add levels to the game to give the prototype a sense of completion.
  • Each level is a new initial configuration of tiles and patterns that the user needs to build.
  • Each level has an overall goal of reaching X points, where X is might be 10,000, etc.
  • When the goal is reached, a 'win' message is shown.

Challenge Part 2: Treasures and Spells
Once you have the basic engine running and the gameplay feels good, here are some additional mechanics that should improve the rhythm and addictiveness of the game.

Buried Treasures
As you dig about, you’ll discover buried treasures. These are magic chests that contain a variety of interesting and useful things.
  • Click on the box to open it. The box fades out in a glorious burst of particles and the item inside pops out.
Buried mana
Some treasure boxes simply have bonuses of buried mana. Bonus points increase the user score for no additional work.

Buried spirits
You can also uncover buried spirits in treasure boxes. These are ancient villagers from ages past that require truly opulent homes. They give you a new mission and extra bonus points if you bring them back to life.

Buried Spells
You can find spells in treasure boxes. These are special actions that give you useful tools for manipulating the environment.

If you click on a spell icon on the map, it activates. If it requires targeting, your cursor turns into the appropriate spell. Click on the spell again to cancel. If it does not require targeting it becomes active immediately.
  • Boom: You can blast a house to pieces. This allows you to build it again for more points, or you can get to the stuff underneath. All the house pieces disappear. You can also use the boom spell quickly dig through a hill.
  • Find Tile: Finds a block of a specific type. For example, ‘Find Grass’ would cause the top level tiles wherever buried grass tiles are located to glow.
  • Find Rare: Highlights any rare tiles.
  • Bonus: Increases the bonus that you get from completing houses in a particular amount of time.

Future ideas
If the core mechanic is interesting, we can introduce additional layers of complexity and rewards. The future ideas section is a brainstorming list to get your creative design juices flowing.
  • Economy: Points are really money. :-) As you gather them, you gain the ability to purchase more land, more villagers, visits to other maps, tiles, rare patterns, clothes for your villagers, etc.
  • Additional prayers: Some villagers will become unhappy again, even after they get a house. They request gardens, bath houses, etc. You get loads of bonus point if you assemble these touching their existing abode.
  • Marriage: If you put a man and woman’s house next to one another, they will fall in love and you’ll get a marriage bonus. If you wait long enough, they’ll have a small child who can request a house of his own.
  • Stacking objects on villagers: You can stack tiles on a person. This allows you to keep track of the tiles that a particular villager requires and gets the tiles out of your way.
  • Complex patterns: Advanced patterns can be quite complex. We’ll have to see if this is an enjoyable avenue of advancement.
  • Fast completion bonuses: If you complete a pattern quickly after receiving the prayer, you get a bonus.
  • Minimum number of moves bonus: If you complete a pattern within some number of moves, you get a bonus.
  • Time sensitive prayers: Instead of prayers just waiting for you to click on them, a prayer starts floating up in the sky. If you don't catch it in time, the prayer is lost and the little villager is unhappy.
  • Scrolling maps: Larger scrolling maps gives the user more things to think about.
  • Water: You can drag water onto crops to soak them. This will cause some to grow and yield new treats like mana or spells.
  • Pests: Pest come through and damage crops and buildings. You can drop rocks on them or pick them up and drown them in water.
  • Player on the map: It would be possible to add the player as a character on the map. This gives the player someone to identify with and adds more gameplay possibilities. It also gives a focus point for scrolling. To move, just drag your avatar to a new location and the screen scrolls accordingly.
  • Web-based play: It would be great if this was an online game with instant access and no install. Other players could come visit your realms and chat.
Long term vision
CuteGod is a paintbox game. Ultimately, the user should be able to organize and paint the world that they desire. By carefully managing their tiles, collecting the right patterns and spending wisely, they can create a little living world that is their personal space.

Conclusion
This challenge is an interesting exercise because you get to see the craziness that happens when you prototype an original design. In my limited knowledge of games, the dragging and arranging of tile patterns to satisfy the prayers of little villagers is an uncommon mechanic. There aren't a lot of example to fall back on when something isn't working.

That means much of your prototyping time will be spent balancing and exploring with the new game system. Build the initial game, but don't be afraid to take in new directions if you discover interesting sources of fun. If you end up with something that is truly, horribly unenjoyable, certainly share it! Everyone will learn from both the dead ends and the successes.

For those of you who wonder why there aren't more original games, this can be a great learning experience. The first lesson is that original design isn't usually constrained by technology. I've intentionally kept the engine requirements rather low tech. Instead, the biggest challenge becomes the mental shift from 'implementing a spec' to 'finding the fun in a new game system.' These are two very different skills. If you merely implement an original design, you'll often end up with unplayable garbage. Instead you have to dig for the fun.

In today's risk adverse game development culture that focuses on rapid implementation of a spec, many game developers never master or know how to manage the process of finding the fun in a new game design. It is a process that requires slack time in the schedule to experiment and balance your game. It requires tight collaboration between design and development usually in small groups, not large silos. It requires the ability to try out multiple things at once and pick the best option, not the only option you have time for.

So here is an opportunity that only a few commercial game developers get a chance to regularly engage in. Have fun. :-) I'm very much looking forward to see what you make!

take care
Danc.

Prototyping Resources
Download the PlanetCute tiles: I've added over 20 more tiles and objects. The shadow system is improved, you can build full houses and there are hearts, gems and stars.
Shadow Tile Placement: One of the first problems that prototypers run into is that their lovely work doesn't look like my mockups. This is because my mockups use the miraculous height improving power of the shadow tiles. I updated them in the latest .zip to be even more effective. If you haven't downloaded the PNGs lately, I recommend you do so since some of the graphics and some of the tile names have changed.

Use the diagram below to write your clever algorithm for automatically placing shadow tiles appropriately. (It is an endearing puzzle all by itself)
  • Tile A is on level 1
  • Tile B and C are above Tile A on level 2
  • For each of the 8 directions of the compass, tile B will cast a shadow on tile A. In order to simulate this effect, I've created 8 shadow graphics. If you are Tile A, check the rules. If a rule is true, place the appropriate shadow tile. You can have multiple shadow graphics on top of the same tile.
  • Special case A: When two tiles are on the same level in the diagonal pattern shown below, you need to place Shadow Side West.
  • Special case B: When a tile is at the very top of the stack and there is nothing north of it, you can reused the Shadow South graphic to give the edge more emphasis.




Populous: The original God Game. This genre eventually morphed into more mundane sim and building games, but the fire and brimstone original concept has rarely been revisited. This game was a formative part of my youth. The mechanics of CuteGod are slightly different, but the setting remains an homage to one of histories great original game designs.

Labels: , , ,


Read more!

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

Labels: , , ,


Read more!

Tuesday, May 01, 2007

Thoughts on Silverlight, Expression and Games

I just got out of the packed keynote for MIX 07 in the surreal universe that is Las Vegas. The event was set in an enormous hall at the Venetian with four cinema sized screens dominating the stage. You could see individual pores on each speaker. A band on raised stage was rocking out to sweet accordion music set to what appears to be lyrics about pickles. All around me are masses of developers, designers and Microsoft folks gabbing about art, Macs and revolutionary new technologies. Wait, where was the chatter about black helicopters and the joys of pragmatic Outlook maintenance? Cultural dissonance rocks my world.

The big news of the event is that Silverlight will have will have full .NET support. Silverlight, for those who haven’t been following the glorious web technology soap opera, is a cute little browser plug-in that allows you to build rich internet applications. I think technologies like this are good for game developers. More on that in a bit.



Expression Design is released
My product, Expression Design also went live Monday morning and I picked up a boxed copy at the event. To say the release process is like giving birth is perhaps extreme, but I’m very proud of my team. They’ve waded through swamps of vipers to get this product out the door and are already rearing to work on the next version.

Version 1.0 graphics tool are rather rare and mysterious creatures that few software developers get a chance to work on. I’ve been blessed with the opportunity to design three in my career and have come to realize that their promise is greatest even when their features are most limited. The next few years will be a rush.

SpaceCute supports Silverlight
If anyone is interested in dabbling with either Silverlight or Expression Design, it just so happens that all the SpaceCute graphics were built with these technologies in mind. To squeeze the delightful XAML marrow out of the SpaceCute files just follow the steps below:
  • Import the .design file in the zip into Expression Design
  • Click File > Export in the menu.
  • Select XAML as your file export type
  • Select “Silverlight”
  • Export.
Voila, you have a lovely chunk of XAML assets for messing about with Silverlight. You can now make a sexy, zippy, web-based version of SpaceCute that runs on both the Mac and the PC in Firefox or Internet Explorer. Here are links to all the files.
  • Download Silverlight: http://silverlight.net/Default.aspx
  • Download Expression Design: http://www.microsoft.com/Expression/products/download.aspx?key=design
  • SpaceCute Graphics: http://lostgarden.com/SpaceCute%20PNG.zip
Why web-based technologies are desirable for games
I’ve devoted most of my professional life to making complex game technologies more approachable and accessible for creative people. Silverlight and Expression Design are just a couple more steps along that path. I’m a big fan of runtime technologies like Flash and Silverlight because they offer two important advantages to small game developers.

Simple install: A massive percentage of (often upwards of 50%) downloads never make it onto the customer’s machine. That translates directly into lost sales for those starving indies of the world. A single click install where the player has instant access to your game allows you to capture player interest immediately. Once you’ve hooked them, you can stream in additional levels, cut scenes etc at your leisure. When you increase your initial conversion rate, you increase your revenue. It is simple math, but a bloody hard technological problem to solve well.

Reliability: Custom engines run well on the developer’s machine, but often fail in horrendous ways on a multitude of customer configurations. A mass market runtime backed by a company whose biggest value proposition is a great experience on the widest number of machines means you shouldn’t have to worry. The number of support calls a Flash developer fields regarding video drivers crashing their customers computers is substantially lower than the number fielded by folks who build a custom engine.

Areas for improvement
Obviously, not all game developers use Flash or Silverlight. If you look at top titles like Bejeweled, Peggle, or Aveyond they still use old school downloadable installers. In the past few years, there have been big obstacles to using browsers plugins as your primary platform for casual and indie game development. The good news is that these problems are slowly, but steadily being eradicated.

Robust programming model: Historically, you’ve been forced to program your million-line project in Javascript. As Dofus shows us, this is certainly possible. Yet due to issues with maintainability, very few folks want to do it.

This is the area that Silverlight addresses. The addition of a full-fledged language like C# should not be underestimated. You’ll start seeing more complex games with more intricate behavior. You’ll be able to easily create scalable, robust architectures using familiar tools. This advances us beyond ‘house of cards’ applications and opens up rich clients to the classically trained master programmers of the world. I am a great believer in their creative powers to blow our minds and change the rules of the game in the process.

Speed: Traditionally, web-based engines have been slow. Users are subjected to slow framerates, small number of objects on the screen and wimpy dynamics. It is not really surprising, given these limitations, that the majority of Flash games are simple action games or point and click adventures. Our runtime technology is barely capable of running games that were popular in the early days of DOS. With technology limitations, come genre limitations.

With Silverlight, you are seeing the execution speed of C# code running 300 to 1000 times faster than the equivalent JavaScript code in some cases. This is a good start. Both the latest version of Flash and Silverlight are also starting to pump out reasonable numbers of objects on screen without slowing down the system. In the next couple of years, I see web technologies reach DS or PlayStation level of 2D capabilities. This opens up the golden era genres like epic platformers, brawlers, fighting games, and RPGs.

Local storage: The biggest reason that folks are using downloadable applications is that many users still play offline. Ideally, we could cache 20 megs of data plus a 2 meg save game file on your hard drive and allow you to use the application when the internet is disconnected. This is exceedingly difficult with current technology.

Some of the technologies that Adobe is working on looks promising here and I hope to see more from Microsoft in the future. When game developers gain control over their caching and local storage, the silly distinction between online and offline starts to disappear. This blocker hasn’t been solved yet, but there is hope.

Future of mixed cloud/client games
What really excites me is the mixed world of applications that sit halfway in the cloud and halfway on the client. As these become easier to develop, more people will get into the market and they will innovate in order to differentiate their products. Casual game developers are just starting to dip their toes into this universe, but with time expect a flood of interest. Occasional connectivity + instant downloads is a huge and exciting opportunity to create entirely new genres.
  • Shared user created content: As users create content and upload it to a universal cloud, you open the world of massively single player games. Imagine Spore as a web-based RPG or platformer with a single click install.
  • Multiplayer experiences: Little Big World shows a little bit of what can happen when you mix an traditional platformer with online capabilities. Imagine if most web-games had this level of multi-player mechanics.
  • New revenue models: The retail model of paying 19.95 for a mess of levels is due for a shakeup. Micropayments in casual games are a natural fit for cloud/client games. The cloud provides the persistence and the payment system. The client provides the rich interactivity that captures the player and provides the compelling context necessary to encourage them to invest monetarily in the game.
  • Stats: Great games are well-balanced games. Well-balanced games are created through the massive amounts of user feedback. Internet enabled games offer a natural way of collecting copious amounts of player data in a transparent manner. Imagine if all games had Valve-level diagnostics built in. If websites can do it, so can games.
Ending thoughts
I’m excited about Silverlight, not necessarily because it solves all the problems facing game developer or because it provides all the solutions. I’m excited because it adds a serious jolt of competition that is bound to drive rapid advancements. The improved tools and more robust runtime platforms that result from competition are huge wins for game developers. They allow us to focus on making great immersive games, not on rewriting our game engines for the 57th time.

For at least the next five years, the casual and indie games marketplace is going to be a crazy ride. The ‘typical’ genres of point and click Flash adventures, shooters and downloadable Bejeweled clones is going to replaced by instant install, rich applications that cover a much broader range of game genres. Developers will have the power. They just need to use it to make something amazing.

Take care
Danc (in a good mood)

Labels: , , , , ,


Read more!

Thursday, April 05, 2007

Free game graphics: Tyrian ships and tiles


I stumbled across a personal treasure this weekend. Tyrian, the ancient vertically scrolling shooter from long ago still happens to have a fansite. While browsing through their forums, I noticed that Jason Emery, keeper of the Tyrian flame, had made the source code available and folks were actively digging through it.

My thanks go out to whoever ripped the graphics from the source code and posted them as PNGs. Somewhere in the mess of moving multiple times in the past decade, I managed to lose the original files. The freshly ripped files have some transparency errors here and the order is a tad confusing, but I am delighted to have copies again.

Hot summer, great job
I drew up the original graphics in about 4 months as my first real summer job. A friend of mine who shall go by the pseudonym "Ray" had sent around some of my artwork (without my knowledge, I might add) and I ended up getting a random email from a very young Alex Brandon asking me if I wanted to make some graphics. It was either that or another summer stocking beer in the 7-11 cooler. 19 and making games. Heck yes.

I had recently splurged on an Amiga 1200 and it managed to pay for itself that very summer. Alex sent me a short list of list of levels and said "Draw us some graphics." So I did. I turned up the radio and crunched away from 11am when I woke up to 11pm when David Letterman came on. There is some wierd stuff in there as a result, but no one ever complained. They just said "Make some more!"

Remastered and free
In hopes of contributing back to the great and eternal indie scene, I 'remastered' the graphics by removing some of the conversion dirt that had accumulated. Man, I haven't done pixel editing in years. I also took the liberty of stripping out as the various 'non-Danc' flesh-colored seahorse graphics that managed to make their way into the tile set. I may not have gotten all of them, so credit likely goes to Jason for the lovely hotdogs, etc.

I'm making the set available for using in your games, prototypes, animations, etc. Again, use and abuse them as desired. If you make something cool, let me know! Feel free to link back to this page so that others can grab the graphics and mess about. It is good to share old pixel graphics. :-)

And to think, all those hours of effort fit easily into a little more than a meg of pngs.

Download the files here
Remastered Tyrian Graphics.zip (1.3 megs)

best wishes,
Danc.

PS: I'm still missing the store graphics and the cutscene graphics. One day I'll get my hands back on the infamous 'Head on a spike' picture that caused so much consternation.

Labels: , , ,


Read more!

Thursday, March 15, 2007

Lost Garden License

Many of the emails I receive ask questions about licensing my designs and artwork. In order to clear up any issues (and save me some emailing!) I've created this licensing page. When you see reference to the Lost Garden License, it refers to the items listed below.

Basic License
All licensed items use the Creative Commons Attribution 3.0 License. In short, you can use and modify any images and design covered by this license provided that you attribute the original source materials to me. I chose this license because
  1. I want as many people as possible to use the materials I've provided.
  2. I want to spare developer the accusations of theft that sometimes occur when people recognize my materials. Many of the graphics and designs are widely known at this point. The best solution is educating your users on the source of the original inspiration. That way they can move past yelling 'Thief" and start appreciating the variations on the theme that you have created.
We have entered a brave new world of open source game designs. This is a rather exciting experiment since in the past, users have been trained that the publisher acts as the singular inspired creator who makes all games associated with a particular IP. If a player liked the first Guitar Hero, they trust that the next Guitar Hero will be driven by the same creative vision. Of course all this is a lie. Sequels and expansion packs are only occasionally made by the original creators. They are usually copies and clones created by contracted teams that have only a minor connection to the original artists.

Open source game designs remove the false facade of the sole inspired creator that has been pushed and marketed by publishers and IP managers. Open source designs publicly declare that game designs are systems that can be implemented in dozens of subtle ways by dozens of different teams. If we believe that sequels are valid experiences, then the products created from open source designs are also valid.

The difference is that with an open source design, you know who contributed what. My designs are readily available. You can see what I added to each project. Everything else was done by the team that made the game. There is no slight of hand promoting a fake brand while nameless creative folks are shuffled about like interchangable cogs behind the scenes. Honesty is the better policy.

You can read more on this particular license at:
Game design attributions
If you use a game design from Lost Garden, please include following attribution in your game credits.
  • "Game Design Title" design by Daniel Cook (Lostgarden.com)
When possible link to the original game design. For example, the Fishing Girl design would be: "Fishing Girl" design by Daniel Cook (Lostgarden.com)

Art attributions
If you use art from one of my free game art collections, please include the following attribution in a visible location along with any other credits.
  • "Art Collection Title" art by Daniel Cook (Lostgarden.com)
When possible link to blog post that discusses the original art collection. For example, the Space Cute collection would be "Space Cute" art by Daniel Cook (Lostgarden.com)

Frequently asked question

What game designs and art assets are currently covered under the Lost Garden License?


You can find a complete list here: Can I use the assets or designs covered by the Lost Garden License in a commercial project?
Absolutely. I encourage it! The best way to learn about game development is to finish a project and try to sell it.

Why are you doing this?
I hope, in some small way, to help cultivate the next generation of great game developers and designers. By removing small road blocks like graphics and design, perhaps a few more people will be encouraged to stop just dreaming and starting making games. Everyone in this industry is here because we stand on the shoulders of past developers. We use their tools, their techniques and their ideas. Giving back to the community is a natural way to repay that great and much appreciated debt.

Is all art on the website covered by the Lost Garden License? For example, are your drawings and paintings free as well?
Only those assets that are specifically called out on the associated blog post as being licensed under the Lost Garden License are free to use. There will be a clear link to this page. All other drawings and artwork are protected under standard copyright laws.

Can I archive assets and designs on other sites?
Sure. If you archive assets elsewhere, be sure to display a prominent link back to the source page so that other game developers have an opportunity to discover this site.

Can I donate to Lost Garden?
Even when graphics and designs are released as free, some kind souls want to give back (especially if they've just received a check in the mail).

How much is appropriate to donate? A common fee for both an initial design + graphics might be 10%-20% of final revenues. However, the decision is yours. Any money I receive via the PayPal link below will be set aside for A) improving Lostgarden.com and B) promoting the advancement of game design.



take care
Danc.

Labels: , , ,


Read more!

Saturday, July 08, 2006

More free game graphics

Here is another set of free game tiles for a 2D Zelda-like RPG that I discovered lurking on my hard drive. These were created for a prototype title so there are only a few sets completed. These would make a great start if you are in need of basic graphics for your next great game.


Wilderness Tile Set


Interior Tile Set


Village Tile Set


For the time, these were rather high tech.
  • The shadow tiles had a total of three levels of transparency built in so that you could get a deliciously extravagant soft shadow. The plan was to have some sweet assembly code that shifted our 8-bit palette by different amounts for each indexed shadow color. Soft shadows weren’t even a buzz word at that point.
  • You could have objects on top of other objects. Instead of drawing a table tile with a candle drawn into it, the candle could be a separate object layered on top of the table.
  • They were drawn in Painter 2.0 using a pressure sensitive tablet. They were my first graphics drawn in Painter. I never went back to Deluxe Paint again. :-)
All of this is of course trivial these days. If you’ve got a 24-bit 2D graphics engine, life is grand. I still get warm fuzzy feelings thinking about our mad plans though.

You’ll need to chop these up into the various pieces and then knock out the transparent color. It is a bit like a jigsaw puzzle, but it follows the same basic pattern of my other tiles sets. You can use the test pictures posted on this page to see if you are fitting everything together correctly.

I’d imagine that if you are making a 2D game with any sort of wilderness or villages, these would be an ideal starting place and are a lot less painful than tracking down a competent artist. As always, these tiles are free to be used in whatever projects you desire. (I need to get a copyleft license available at some point.) If you do use the graphics, drop me a note. I love hearing about projects.

Download the files here (1.89MB)

Enjoy!
Danc.

Labels: , ,


Read more!

Sunday, February 26, 2006

250 free handdrawn textures

I was searching through my old archives and came across a set of 250 textures that I thought were long lost. Heck, they aren't doing much good sitting on a slowly decaying CD-R so I figured I'd share them with everyone.

Click here to download CircleTextures.zip (4.49 MB)

Use these however you desire. Mash them up, put them in your games. If you end up releasing a game using these graphics to the public, all I ask is that you put a link to this website someplace the nether depths of your credits.

They are a few years old, so they are all 128 x 128 images using a common fixed 8-bit palette. I also included a text file that explains the naming convention.

If any of you are new to graphics tiles, here's a little illustration that explains all the parts. You have a set of 14 titles that can be used to make any irregular shape and smoothly transition between two titles. For example. Suppose you had a water title and a land title. With the transition titles, you could easily create a pretty shore line.


Tile creation is a dying art since modern 3D terrain engines have all sorts of wonderful blending capabilities for auto generating transition tiles. But if you are working on a game for handhelds or casual games, it is a nice technique to know.

Enjoy!
Danc.

PS: Here's another picture I found! This is the Colossi, a giant floating airwhale that was genetically engineered to serve as the mothership of a parasitic race of super spies known as Puppeteers.



Labels: , ,


Read more!

Tuesday, March 29, 2005

Download a complete set of sweet 8-bit Sinistar clone graphics

Download the complete graphics to Iron Plague, a Sinistar clone

As I dug through my archives of old images, I came across another complete set of graphics from 1995 for a wild Sinistar clone that was never released. I own all the copyrights and figure, what the heck. Some crazy fool who is still obsessed with the glory of pixel art might find a use for them.

Complete descriptions of all the graphics after the link. Enjoy!

This is the complete list of all the graphics. Since it was a space game, the number of tile sets is rather limited. We originally built the game map as a big bitmap that stuff was randomly blitted to. It had super smooth scrolling and pretty decent physics.

  • ActGrid: Spawn point for player's ship
  • Barrel: Repulses the players ship if it gets near
  • Base: Spawn enemy drones
  • Beacon (Destroyed, Searching, Red Alert) Sensor that looks for any enemy
  • Beacon2: Alternative sensor type
  • Blood: Splots of animated blood if you kill a space man.
  • Bomb1: Classic pulsating bomb. Exploded with great force, inevitably.
  • Bship: Battleship with cool rotating turrets. This thing was 3 times as large as your ship!
  • Bubble: What the hell?
  • Bullets: 6 types of bullets, each with 3 levels of power.
  • More bullets: Powerups and different color bullets for rock, paper, scissor attacking action.
  • Canister: The crate lives! Holds powerup, naturally
  • Cargo1: Ook? Alien nasty.
  • Cargo1b: Alien nasty damaged
  • Cargo2: Another cargo ship
  • Check: Checkpoint. When the player reaches this checkpoint, they regen from this location.
  • Crystal1: The cash of the game. The evil drones use this to make the Killer.
  • Crystal2: You have to realize that we didn't have the ability to rotate things easily. This was a radical attempt to create 16 rotational positions. 8-bit technology at it's peak.
  • Debris: The stuff that spews out when an asteroid is mined by drones
  • Debris2,3: More of the same.
  • Doomsday: Think of this as very nasty big bomb. If you hit it, the entire screen went 'foomp' and no more little player.
  • Drone: These little fellows run about gathering crystals in order to build the Killer. They'll orbit an asteroid, fire at it until a crystal appears and take it out.
  • Drone2: A more efficient type of drone
  • Exhaust1, 2, and 3: This flame comes out the back of a spaceship.
  • Explode1, 2, 3, 4, and 5: Ah, the glory of highly animated explosions with 1-bit alpha.
  • Face1: This fellow was the store keeper when you bought upgrades.
  • Factory: An enemy installation that made drones
  • Factory2: An enemy installation that made super drones
  • Factory 3: This is where the Killer was built.
  • Factory 4b: This is where the mini-Killer was built.
  • Flame: Fireballs stolen from Mario, no doubt
  • Flamer: Everything you need to make a flame thrower of death and burnination
  • Font: I'm in awe. Font with *high light selection*
  • Formref1: Reference on how formations worked. Galaga, move on over.
  • Gamemenu: The basic menu for the game. Check out those gears.
  • GravBcon: A gravitational beacon that sucked the player towards the deadly rocks.
  • GravGrid: Bubbles in space that acted as a simple form of terrain. Very fun.
  • Guard: These trigger happy campers guarded the drones. No one ever said plot was important to video games, dammit.
  • Gun: It looks more like a blimp, but this fired out little round bullets in streams.
  • Hiscore: Enter your name, record your score. If we had come out a few years later, we would have licenced some sweet Tony Hawk punk/death/metal sellout music for this screen.
  • Hunter1, 2: Attackers that come straight at you.
  • Items: All the great powerups you could get. I have no clue what they do, but I like shiny things. (Let's see: Generators to improve energy recharge, shields, health, rubber duckies, various weaspons, and the Amiga Checkmark)
  • Junkdrtst: Energy gates
  • Joystick: Back in the day you needed to calibrate your joystick. These are the interface graphics.
  • Junk: Destructable junk that acted as mazes for the level. You could blow holes in it...cause that's fun.
  • Keyboard: Keyboard configuration
  • Killer: Ode to Sinistar, my ass. Talk about exact copy. This happy looking fellow was a pain in the arse once he came to life.
  • Killer2: The mini-killer. Not quite a munchkin, but still damn sexy. His eyes would slowly come alight as he was built. He could also split apart when he was built.
  • Knife: Um...seems rather morbid.
  • Launcher: Another enemy ship. This one flew around spawning little ships
  • Mage: A logo for our team
  • Main: The intial interface. We went with a much more minimalist look in the end.
  • Main2: The final minimalist UI
  • MainMenu: Yet another menu template
  • Mine: These fellows floating around caused mucho pain
  • Missle: Hmm. Sloppy, sloppy. The high light is off in the lower left corner.
  • Mouse: UI for selecting mouse control.
  • Names: All the cool folks in our development team. I still talk to Leinad (music), and wReam (Hmm...what did he do?) and Zoombapup (programmer...he ended up working on Worms for ages)
  • Nebula: Gotta have background graphics
  • Options: The options screen. In the end, it is all about 'Exit to DOS'
  • Pointer: The mouse pointer. It changed when you clicked.
  • PShip2: The player ship. I spent time on the 16 rotational animations so that it would be smooooothy. Like the fine inner thigh of a lovely amazonian princess right after a day of mudbaths and waxing. I was such a proud young artist.
  • Rock: An asteroid that contains crystals and be blown to smithereens.
  • Ship: One of my first attempts at 3D graphics. This took ages to render on a pirated copy of 3ds running in the old computer lab. I think we ran it on the fastest machine on campus, a 486.
  • Ship2: Sweet!
  • Ship3, 4, 5, and 6: Enemy! (Really, all the explanation that was needed)
  • ShipGun: Imagine this...a ship with a rotating turret. Man, that would be so cool.
  • Smasher: Ever have those days when the programmer laughs and laughs and laughs at you? This enemy had an animated energy ball on a chain. Add some primitive physics and you put that little cutie from Kill Bill to shame.
  • Spaceman: When certain ships where destroyed, little guys fell out. They really only existed to be shot. I think I stole the idea from the joy of running over little people in the Amiga game "Firepower."
  • Spacestor: If you made it here, you could buy cool stuff
  • Spike: Dangerous walls
  • Store3: The interface for the store.
  • Sun: The central sun that all this junk floated around. If you fell in, you got hurt. Flares flew out of it periodically.
  • Teleport: A jump gate between sections of the map
  • Test1: A mockup showing the store in action
  • Test2: A mockup showing the game in action
  • Warp: No clue
  • Wave: A giant gun that fired huge waves of fire at the player.
  • Worm: A squirmy worm creature.

And I'm spent.

Labels: , ,


Read more!

Sunday, March 27, 2005

Game Post Mortem: Hard Vacuum

Mining a 12-year old game design for innovative game mechanics.
(Plus the complete set of 8-bit graphics available for download
.)

In 1993, I worked on an unreleased RTS game design called Hard Vacuum. Dune 2, the father of the modern RTS had just come out in 1992, revolutionizing the the gaming community's perception of the possibilities of the strategy game genre. We believed that RTS games were the future and that we were the inspired game developers who were going to popularize this hitherto ignored genre.

Some historical perspective is in order. Warcraft wouldn't come out until late 1994. Command and Conquer wouldn't arrive until 1995. What many PC gamers today consider to be one of the most burnt out genres was at that time new, fresh and completely unknown to most gamers. The term 'RTS' hadn't even been invented as far as I know.

As I write this in 2005, I'm bemused by the path the RTS game genre has taken from stunning innovation to stagnant maturity. The latest Age of Empires is certainly a gorgeous game, but the core mechanics of the genre have changed little since it's peak in the late 1990s.


From this perspective, I revisit a 12-year old game design conceived near the very birth of a genre. In particular I'm interested in the unexpected solutions to common problems. What sort of bizarre innovation occurs when a game designer can't steal from the latest best seller?


Hard Vacuum: The Basics
Hard Vacuum was set in a science fiction world run by large corporations. You were a mercenary battle team, out for hire to the highest bidder and ready to kick ass. Admittedly, a rather generic plot, but then again entries into a new genre are rarely concerned with plot. Hard Vacuum also had most of the basics of your typical real-time strategy game.

  • Resource Gathering: There were mineral deposits that you could build mining towers on to gather resources.
  • Base Building: You could build a variety of building for generating units, new buildings, and additional resource gatherers.
  • Fighting: There were a variety of units that could be deployed to attack enemies, destroy bases, etc. You could select them with a rubber band and send them towards the enemy.

Hard Vacuum: Innovations
There were several interesting systems in Hard Vacuum. Some made it into future RTS games and some did not.

  • Supply Lines: When you built a mining tower on a resource deposit, there was no need to manually build and manage drones to carry the minerals back and forth. Instead, a road was built from your base to the mine. Drones were automatically created when the mine had a full load and sent along the road to your base. Enemies could blast your supply line and interrupt your flow of resources. So protecting fixed supply lines became a bit part of the strategy.
  • Variable Height Terrain: This was a 2D tile-based game intended to run on 386 and 486 machines. We had a full system of variable height terrain. Units on higher ground would have targeting advantages over units on lower grow
  • Deformable terrain with flowing water and lava: You could blow huge holes in terrain with artillery in order to divert streams and lava. Drop a water bomb on a city and watch it wash away an entire troop. Drop a dirt bomb to create a mountain.
  • Walls: Walls played a huge part in the game to give large defensive barriers to attack. These existed in Dune2, but were extended in HV
  • Player created landscapes: Walls, base building, supply lines, and advanced terrain modification all contributed to a game where players built intricate maps during game play. We couldn't afford to spend lots of money building maps so instead we had to create fun systems that let players create unique and interesting combat situations.

What We Lost as Game Players
All all the mechanics in HV, the one I fail to see in new games is the focus on player-created environment. With our bloated budgets, we can afford to spend a two dozen man years creating intricate content that players use once and then throw away. Oh, you spent and hour playing map 3b in the single player campaign? Blizzard spent 5 months designing that. Now you are never going to play it ever again. What a waste.

There is a big lesson here. Without a successful game to promote the concept of player-focused creativity in the RTS genre, this intriguing game mechanic was stillborn. The concept certainly has some validity since we can see that it blossomed in the sim genre in the aftermath of SimCity's success. But without clear examples of successful application in the RTS genre, designer never really had a chance to steal it, implement in their 'next generation' games, and evolve it into something more polished.

I believe strongly that genres evolve in simple steps based on modifications to previously successful games. Games like C&C and Warcraft solidified the major conventions of RTS games. Unfortunately, in the game industry, massive success breeds design stagnation. Once a successful formula for creating a RTS was discovered, gamer designer copy the basics and then focus on polishing the basic formula. Better cut scenes, improved graphics, tweaked unit control for expert users, etc. As game designers, we only look back as far as the last successful title.



Let's play "What If"
Imagine for a moment, if a game like Hard Vacuum had achieved popularity. The ripples of a successful early title have a profound effect on future titles. Would it be obvious the most casual game player that terrain modification is a fundamental part of the basic RTS formula? Would things like supply lines and dynamic player created environments be the standard?

An even crazier thought branches off from here. If these design mechanics had become standard, what would a modern RTS game complete with physics, 3D graphics, and king-of-the-genre polish look like today?

When we look at the evolution of genres, these are intriguing questions. Game designers are too complacent in their acceptance of genre norms. It is up to us to shake things up a bit.

An Exercise for the Reader
Pick up and play an ancient copy of a game that fathered a genre. The further back you can go, the better. Clear your mind of all expectations and knowledge of what the genre evolved into. That cool thing that Half Life did with conversations. Forget it.

Now reinvent the genre. What are the core primitive concepts and where can you take them that would result in addictive player experiences? You have the opportunity to reinvent an entire decade of evolutionary game design in your head. Chances are you will spawn a few original ideas.

If you can get the final project through the miserable distribution system that plagues our industry, you might even have a new genre buster on your hands.

The Hard Vacuum Team
The team that made Hard Vacuum was typical of many groups in the early 90s. We were small, self funded, still in school and willing to work crazy hours. A team like this today can not even hope to create a major block buster game.

Yet, in that time period, this seemed to be the standard. Id took the world by storm with it's first person shooter Doom in 1993. Tim Sweeney and James Schmalz were busy starting up Epic with a titles like Epic Pinball. Most teams were still below 10 people and a large number of successful games where released with core teams of 4 or 5.

I've only been able to keep track a few of the folks involved.

  • Daniel Cook: I did the artwork and a bit of the HV design. I went to work with Epic and created a game called Tyrian that paid my bills for a long while. After that I designed a program called Anark Studio, which is used to create thousands of interactive 3D project. We even started selling it to the game developers this past year.
  • Ryan Geithman: Ryan was our rocking lead programmer. He went on to do some amazing work on Baldur's Gate: Dark Alliance and the new Bard's Tale game. An industry man.
  • Patch: Patch was another programmer. I have no idea what happened to him. He would call me up on pay phones to talk about game design. Every few minutes he would have to play a series of tones from his little blue box to get another few free minutes of talk time. Conference calls through phone phreaking. Those were the days. :-)

Free Artwork
I don't have the design documents any longer, but I do have a large number of the game tiles. These were done primarily in DPaint and Brilliance using an Amiga 1000. We didn't have no stinking Wacom tablets so these were all drawn with a mouse. Pixel art at its finest.

  • ~60 vehicles
  • ~120 terrain tile sets
  • ~30 misc graphic (bullets, blood, clouds, etc)
  • ~30 buildings
  • Interface screens

Use them, abuse them. If you make anything interesting, let me know.

take care
Danc.

Labels: , ,


Read more!