Posts Tagged ‘procedural’

Kingdom Hearts 358/2 Days is a great little game.  Disgaea DS has also been a blast.  I’ve clocked 45 or so hours in the former, and 200 or so in the latter.  The “main story” of the former took about 30 hours to go through (chasing all side quests), and the “main story” of the latter took about 20 hours (doing some side dungeoneering).  I find I keep playing both well past the story’s end, albeit for different reasons.

The core gameplay of KH:358/2 is all about missions.  These are bite-sized chunks of the standard KH gameplay, an action-platformer-RPG… thing.  Missions range from recon to target hunting to simple baddie smashing (complete with small baddies, medium-sized baddies and Big Bad Boss baddies).  None of it is too taxing, but several missions require good timing, quick reflexes and/or knowledge of the terrain.

The core gameplay of Disgaea DS is all about tactical turn-based combat in closed square-grid arenas.  Players build up a cast of characters and field combat teams to take down a range of weird enemies.  Cutscenes tell a story between fights.  The ability to revisit missions and an optional Item World dungeon system provides combat on demand to earn more experience, money and items.  None of the tactics are all that demanding, but there are several that provide a more puzzle-like experience, rather than a simple tactical brawl.

The “post-game” is fairly different between the two.

In KH, I’m replaying missions to explore early missions with new abilities, chase tokens and treasures, or even play with alternate characters.  (Some are fantastic, some are awful.)  The core gameplay really doesn’t change much in the endgame, though, and the missions are exactly the same, only your approach changes.  The ends are the same, in other words, but the means change (fairly minimally).  I’m still chasing achievements and better loot, not new ways of playing the game.  (OK, OK, I can still unlock Sora as a playable character, but that’s not much, since he will play much like Roxas anyway.)

In Disgaea, I’m playing through the storyline again (yay for “New Game +” mechanics!) to see a different ending, but I spend most of my time in the Item World.  Item World levels are procedurally generated, and often a great playground for the geopanel system.  Every level I go to in the Item World is different.  The team I have is pretty static by now, but the stage that I’m playing on changes constantly.  I’m constantly tinkering with new content thanks to the procedural floor generator.  Sure, the ultimate end goal is always the same (defeat all foes or sneak to the exit), but the path through each level is different.  The ends are still the same, then, but the means change considerably more than they do in KH.

This is the difference between 200 and 45 hours logged.  I’ll play each more, I’m sure, but in the end, I spend a lot more time playing through the procedural content in Disgaea DS than I do playing through static content in KH.  To be fair, procedural content only works in certain formats.  The lovingly crafted beautiful 3D worlds in KH don’t lend themselves well to procedural content generation.  The procedural content in Disgaea DS is tile-based, with some larger multitile structures, but certainly nothing as carefully presented as KH worlds.

So, if there is a balance between pretty graphics and playability via content generation, I find that I fall squarely in the camp of gameplay.  I’m more interested in means than ends, at least when I’m playing games.

It’s not too surprising that I feel much the same way about MMOs.  To be sure, the content generation there will naturally be more in line with the KH model, being in 3D and requiring more assets.  I’m still most interested in varied, dynamic, interesting gameplay, rather than chasing loot through the same dungeons.  Raiders have told me that the dynamics of a group can provide some of that, so I can see myself dungeoneering a little while learning a dungeon, but once it’s on farm status, just going through the motions for better loot or arbitrary Achievements does nothing for me.

No, I want a living, dynamic world that I can influence and mold.  I want to color outside the lines, ignoring the ends.  I’d be content tinkering with the means, because once I get to the end, that’s all that you have to keep me in your game.


Read Full Post »

Shamus over at Twenty Sided has a great series of articles up on FUEL, specifically the game design aspect of procedural content, and how it fosters exploration in the FUEL world.

FUEL:  Introduction

FUEL:  Defining Procedural

FUEL:  Roads

FUEL:  Terrain

FUEL:  Final Thoughts

It’s well worth reading through all of them if you have any interest at all in how games are made.

Procedural content is a fantastic tool for devs.  It multiplies art assets and labor, and makes higher level art direction easier in some ways.  WoW made extensive use of procedural terrain generation, and I suspect pretty much any MMO has used at least a simple fractal generator or three, at least as a starting point for the huge swaths of land they tend to boast.  Crafting all of that by hand just isn’t feasible.  Hand-polishing places here and there, and lovingly crafting certain high traffic locations is smart, to be sure, but you can do a LOT with clever procedural algorithms.

This is one good example of fractals that show up when you know what to look for (thanks to Postcards From Azeroth):

The Mirror Of Dawn

The edge on that lake is very fractal.  Compare it to the Mandelbrot set fractal over here.  You’ll find this sort of thing all over the place when you look at large scale geography in games.  Fractals tend to look natural enough to fool the eye, at least as long as you don’t look too deeply.  There are entire programs built around this.  Bryce is perhaps the most common one, but Terragen looks to be one of the more powerful ones.  (I keep meaning to experiment with it… when I have all that free time, right?)

Whether you use one of those programs or an in-house terrain generator, the principle is the same, though.  Let the computer do the mindless, repetitive vertex shuffling according to some simple rules that can generate complex output.  (Pretty much what fractals are all about.)  Computers love to do that sort of repetitive, mindless number crunching, while computer artists and engineers tend to see it as a waste of time.  (Not to mention mindless and morale-killing.)

It’s a bit like brushes in Photoshop, or filters.  They exist as visual “macros”, quick and easy ways to perform repetitive tasks, hopefully freeing up expensive artist time to work on art direction and specific set pieces.  That’s a significant part of why Photoshop and Painter even exist.  I could reproduce the Mona Lisa pixel by pixel in MSPaint, but why in the world would I want to beat myself up that way?  Computers waste a lot of our time already, why not let them shoulder the load when they are good at it?

I worked with Renderman for a while in college.  In one class, I wrote shaders from the ground up, effectively creating textures for 3D objects completely in code.  There are some shots of my work over here:

Renderman (There are also some cool eye shaders over there that I had a blast putting together.  The mesh for the eye was just a simple NURBS sphere; all of the subtleties of the cornea and coloring came entirely from code.)

OK, it was done in Renderman code, which is more like scripting than coding.  Still, there was no painting involved, no 2D graphics program, just code and a 3D mesh from Maya.

Procedural Gourd Texture

Procedural Gourd Texture

Everything that made this gourd’s coloring was typed up in a text editor.  The assignment was to take a real gourd and replicate it with a simple Maya 3D mesh and the Renderman code.  The color, texture, lighting, surface lighting properties and even slight bump mapping (I don’t think I used displacement mapping on that one) on that gourd are entirely text-based.  If I, a paltry college student, could do that, imagine what the Pixar guys get away with.

You can do a lot with code.

That might sound a little odd, coming from me, an artist.  I’m one of those newfangled artists, though, who sees great value in this sort of thing.  I loved the “tree painting” tool I used for EA.  It let me “paint” where trees should grow, how dense and how tall, on a Maya surface, and it would bring in preconstructed trees and scale them appropriately.  I effectively painted forests onto the world.  It really could have gone a step further and had the trees themselves be procedurally generated.  Trees are perfect for that sort of thing.

Roads are another natural fit, considering they tend to either fit a grid or flow with the terrain (itself procedurally generated).  Sure, you need more constraints in how they actually behave so that they make sense, but it’s precisely that sort of process that game programming deals with all the time.  It’s all in finding the simplest rules possible that will, when given a starting point and a bit of randomness, can produce something that looks natural.

In a way, it’s telling the computer how to process rules like we teach art students.  If you can give the computer the code equivalent of the rules and principles of art, like balance, rhythm, line, proportion, variation, motion, color theory and so on, it can generate a lot of art in short order.  (All that artists do is apply the same rules to whatever ideas rattle around in our head.)  It may not have the spark of creativity that makes the finest hand-crafted pieces as great as they are, or the rationalization that allows us to think a Pollock painting is high art, but computers, sufficiently educated, can do a lot.

Though, it should be noted that educating them takes time and effort, as well as an artistic eye.  Computers are also notoriously stupid (or exceptionally smart) in that they are rigidly bound to internal logic and thinking “inside the box”.  They are fantastic tools, but must be used the proper way to be of any use.  You can’t just put Deep Blue in a room and tell it to whip up the perfect video game.  You can, however, use them to shoulder a lot of the inane repetition in the development process.

Shamus describes it in depth over at his place, so again, I heartily recommend his articles.  I’m mostly just chiming in as an artist, noting that I love it when the computer can help make my job faster and easier.  I suppose that at some point, it could be argued that a sufficiently advanced computer could do the job on its own, but I’m confident we’re at least a few years from that situation.  And, well… once that day comes, I’ll be telling the computer how to do the job I once did, so things will work out.

Read Full Post »

Just another collection of interesting game design related links.  I found them interesting enough to want to have access to them again, but time is short enough that I don’t have time to do a full writeup on each.  (And some may not necessarily merit such treatment.)

These are tucked behind the More link to keep the main page organized.


Read Full Post »