Navigation
About

This is Graham's personal blog about game design, generative art, and whatever other interesting things grab his attention.

It may be slim now, but add it to your feed reader... There is more to come!

My other web-based bits

Categories
Search
Recent Bookmarks
Login
Monday
Mar092009

PFrank - Easy Regex-Based File Renaming

Anyone who spends 8 hours a day on a computer pushing around assets for a big game has at one point or another needed a way to rename bunches of files at once. I've been looking for a good tool to deal with mass-renaming for some time, and they all generally fall into two categories:

  1. Namby-pamby tools that can't do much but change a file extension or add a number to the end.
  2. Command line tools that, while powerful, are obtuse and dangerous.

Recently I came across a nice free tool that sits (for me) in the ideal middleground: PFrank.

PFrank is quite powerful, utilizing regex for it's main renaming functionality, though it supports standard windows wildcard matching as well (E.g. *.jpg to select all jpgs). Where it really shines though is in the peace of mind it offers for large operations. It lets you preview your renames on a bit of sample text while editing, giving you a chance to get the expression just right. As well, before the rename is run, it will preview the entire operation, showing the before and after of all affected files. Finally, you can save an undo file, letting you easily revert a rename operation.

There are a load of other features as well that may or may not be useful to you: You can save rename operations for later, for example to run them periodically, or to share with coworkers. You can write custom renaming plugins in Python to handle complex cases. It will read metadata out of images and audio files, allowing you to rename files based on this information.

So I'm sure that all my programming buddies are going to point me to some tool in cygwin that can do everything this can and more. But this is a tool for those of us that don't live on the command line and still need advanced renaming functionality.

Sunday
Mar082009

A Rant About Dungeon Crawlers

So the other day Titan Quest was on sale for $5, so I picked it up. Some friends had said good things about it, and since it was cheap I grabbed it and spent an afternoon on it.

However, dissatisfaction set in almost immediately. I chose a skill of some sort that gave me a +2% bonus to something-or-other per rank. It struck me hard and fast. Two percent? In order to see a decent effect from this, I'll probably need to get it to 25% or so (that is, to the point where it makes an appreciable and visible difference in immediate gameplay). That's 13 ranks, or 4 levels putting points nowhere but into this skill, and a level is gained only about every half hour or so (at this point at least).

And most importantly, it was a passive skill, meaning it wasn't any fun to use. In fact, if it was doing it's job I wouldn't even notice it was there.

So the goal of the game at this point was for me to spend two hours working towards something that would ultimately add nothing to the game. Hmm. What's going on?

Mirrored Escalation

One thing that has often and increasingly bothered me about RPGs is the idea of mirrored escalation. You work so hard gaining levels and upgrading your equipment, and the enemies are doing the same thing. Every average-joe baddie takes 3 strikes to kill. At the beginning of the game He's got 15 hit points and you do 5 points a hit, and by the end you're doing a whopping 10,000 damage per hit, but the enemies have 30,000 hit points (or move faster, or there are more of them, or whatever).

Basically, the challenge remains more or less constant through the game. Then, the application of points towards skills is important, and the fact that each skill is only a minor 2% increase in performance is important, because it makes the player sometimes a little behind the enemies, sometimes a little ahead, and keeps the balance from being too static.

As well, the game has well over 100 skills and abilities. By keeping the numbers small like this, it makes balancing much more feasible. Even if some skill or class is much better than another, it's only small percentage points better. Even if a player has put in hours more playtime and has several levels on another player, it only amounts to a few barely-significant ranks of a skill. This is important especially for single player, because no matter which class the player chooses, they still have to able to become the hero.

This is completely standard for the genre, and as much as I dislike it, it is what it is.

What I Would Do Different

Well first off, I wouldn't make a dungeon crawler. Mirrored escalation and incremental levelling are part and parcel with this theme, without them it's kind of a different game. But let's say that I needed to make a game that was 'in that same arena'. What would it look like?

Well, gaining abilities is fun, it's just levelling them that isn't. Giving a player a new verb enriches their experience. Making an incremental change that is nullified as soon as they walk through the next doorway... Well, that feels like a waste of time to me. An example of a game that I felt had a really interesting progression of skills was Ratchet and Clank (the whole series, really).

Not a dungeon crawler, but I blame that on camera and level design. Really, there were a wide variety of skills (weapons and gadgets) that the player could acquire, each with different play styles and special effects. Each one was very different from the next and had an immediate noticeable impact on the gameplay once it was acquired. Players would find their favourites and stick with them. (Yes, the weapons could be leveled up, but that's not the part I'm interested in.)

With more emphasis on verbs and terms of engagement, I think the gameplay could afford to become more tactical than it is in a standard dungeon crawler. Instead of just coming down to an equation of the total enemy hitpoints vs. the total player damage, it becomes more a task of being equipped for the job. This breaks down in single player... provided you want every player to run through the same game. (More on that in a sec.) In multiplayer, this really shines, reaching a conceptual peak at something like TF2. In any case, using the Fire Arrow Barrage because it's more my style, or it's right for the job, not just because it has 2% higher DPS than Mighty Ice Smash Wall.

And indeed, instead of the constant levelling and incremental rising of traits, I'd prefer to focus more on specialization. This happens kind of by default in these games (where putting points into Magic makes you less effective against equal-levelled enemies using Physical), so the difference between a level 40 mage and a level 40 barbarian are largely just a matter of specialization. But the difference between a level 1 and a level 40 are huge! Contrast this with the Ratchet and Clank example. The increased arsenal of the 'high level' player may give them tactical superiority over a newbie, but in any direct confrontation they have similar odds of achieving success.

Same Name, Different Game

Is it possible to make a dungeon crawler that eschews these rutted patterns in favour of something more tactical, where upgrades focus more on gameplay results than on tweaking the statistical engine?

Yes!

I call it Nox. If you even remotely agree with what I've said in this post, you owe it to yourself to play that game. (And if you have a hankering for some multiplayer, get a hold of me and we'll see if it still fires up!)

Although Nox still contains leveling, for the most part it's merely a gateway to acquiring new unique skills. A battle can be gloriously won or horribly lost depending on only on the placement of your character. There are only a dozen or so types of weapons in the whole game, and there is definitely no 'best weapon'. And the multiplayer was fantastic.

So what's my point? None in particular. This was mostly just a rant that somehow turned into a sales pitch. I guess if I was going to take something away from this it would be that we should never feel limited by the genres we build in; there is always room for improvement, and there's always room for improvement in the direction that you want to improve. Also, in my spite-filled opinion, incremental leveling sucks.

What are the big genre conventions that really get under your skin, and have you found any stand-out games that buck them while still staying true to the roots of the genre?

Saturday
Mar072009

Graham's "Design Style"

Warning: The following is very self-indulgent and is largely for my own personal exploration than for your enjoyment. However, there is a question at the bottom that I'd like you to answer even if you zone out in the middle of the post!

DanC just dropped an awesome post attempting to add a bit more specificity to the title of 'game designer'. I commented there, but I would like to indulge myself and go in to a bit more detail, and really dig into what it means to me to be a Game Designer.

During my job hunt, I've had to tell a number of people that I'm a game designer in a way that's meaningful for them. So far, my professional experience consists entirely of Multiplayer for First Person Shooters, and Flash-Based Casual Games. See, that's what's written on my resume; that's what the people seem to care about. Every time I've had a conversation about my skills as a designer, it's always about what games I've made. It's assumed that game genre directly correlates to 'designer genre'. Therefore, I am an FPS designer. And I am a Casual Game designer. Except neither of those quite accurately describe what I'm good at.

 

What Makes Me Happy

But before I get to what I'm good at, I'd like to talk about what I like. Passion is a powerful driver, and I believe it is often a substitute for skill, because passionate people will acquire necessary skill, and even relish it, whereas skilled people with no passion get stuck.

Not to say I'm not good at these things; I am! But it's my passion for them that makes me shine here.

I love exploring systems, using systems, creating systems, pushing systems. I love procedurality, I love complex mechanics, I'm completely enamoured of cause and effect. I love procedural art, because it's art generated by system. I love programming because it's.. well, systems inherently. But it's not just a game with systems in it that makes me happy. It's systems as a way of designing games.

For example, it's very important to me when designing to establish a methodology or design pillars. Basically, any set of rules or principals that can be used to evaluate design decisions, that isolate and identify the most and least important aspects of the game, that guide each member of the team into a unified mind-set. Some people may balk at this, not wanting to shackle themselves with these kind of big decisions, instead keeping the design more organic and free-form. Not me... Systemic!

It's also crucial in each of my designs that they are explorative and mechanically surprising. I'm one of those guys who feels that the player narrative is more powerful than the designer narrative, so making sure that the game is reactive enough that every player gets a unique and interesting narrative is paramount.

The other thing that really drives me as a designer is 'moments of experience'. These are specific sensations, either mechanical, visual, musical, whatever, that I strive to achieve. It's a kind of beacon that I use to move towards, and is very powerfully motivating for me.

It's to my personal taste to have a small number of highly-polished features than to have a wide variety of rough features. I think it's perfectly acceptable for a game to have no backstory, or even no art, or only one mechanic, so long as it conveys the idea that the designer had in mind. Conversely, If there is a graphic, I prefer for that graphic to be a pixel-perfect, colour-tuned, proportionate wonder. I like my mechanics sharpened to a fine point. No gaps in animation, no reactionless interaction.

 

What I'm Good At

Curiously, one thing that I have learned a lot about by working on shooters is Multiplayer. Although it's right there on the resume, people kind of gloss over that as a skill and focus on the FPS part. But really, I think that multiplayer (and specifically competitive multiplayer) is a very general kind of design that is unrelated to genre; it's about making sure that there is a clear winner and loser, that the game is fair (and, more importantly, feels fair), that the loser is motivated to keep playing. In multiplayer, each player is effectively the content for the other player, so the designer has to motivate each player to work in a way that creates interesting gameplay for their opponents, for example by encouraging conflict through level design, by ensuring that the tools available to each player have a visible impact on their opponents game, and so forth.

My proof that this is not a genre-specific skill is that I have been able to apply a lot of the things I learned doing multiplayer for shooters to making multiplayer casual games. And in fact, a lot of these same concepts are even applying to a project I'm working on concerning community design.

Another thing that I seem to have a real knack for is considering how the game serves the player. Although I think this is a critical skill for every designer to have, it's clear from playing games that some teams have this and some don't. This means things like valuing good tutorials, having self-explanatory interfaces, making sure that feedback is strong. Basically, it's important to me that my time is spent considering what's happening 'above the hood' rather than obsessing over how elegant a system is or reveling in the details of a character's description.

 

The Weaksauce

On the flip side, I really don't enjoy anything to do with story in the classic sense. That is to say, I have zero interest in telling stories. I often have lots of ideas for stories that I want players to experience, but they are always their stories. I'm more than willing to provide a world and a context, but as far as I'm concerned the story is none of my business. An example of this is The Sims, or Dwarf Fortress. Each of these has a kind of plot ("The life of an ordinary person" or "A group of dwarves striking a new colony"), but after that context is established, it's up to the player to write it. (That's not to say that characters or environments don't have stories, just that the player's arc in the game has no predefined narrative.)

So naturally, when it comes to narrative (and creative writing in general I must admit) I fall short... likely from lack of passion. I'm a very good editor and my internal thesaurus is strong, but I don't invent plots or characters very well, tending to lean towards systems and mechanics in my creative design.

 

Howdunnit

As important as describing the kinds of designs I make, is describing how I make designs.

First and foremost, for me design is something collaborative. I feed off other peoples ideas, and feed off their energy. I think there is nearly infinite value in getting fresh opinions. (Incidentally, something else I take pride in is my discernment of feedback. Without this skill, opinions can be overwhelming and cause a lot of flagging.) Because I never feed like a design is 'mine', I tend towards not being defensive or protective of it, and because I try very hard to establish a design manifesto and keep my expectations clear, I have no qualms with discussing with people when their ideas do or don't fit the design of a game.

As well, I think that design is fundamentally holistic. That's why it's so important to me as a designer to have a strong grasp on art and code and business and team dynamics, etc. One can be a creative visionary and get all hand-wavey when it comes to implementation, but as a production game designer who is determined to release to the world the best games possible, it's critical for me to know the full ramifications of any design decisions I make, and to be able to react appropriately to feedback and issues.

I'd rather have a meeting than write a document. I'd rather code it/draw it than describe it. I'd rather ask an opinion of how it should be and then make a decision, than make a decision and get an opinion on it. I'd rather spend time up front making tools and prototypes and making decisions, and strive to get things right the first time. I have a burning desire to be involved in every bit of the development, to make sure that at the least my opinion is heard, even if I don't directly contribute to a creation.

I'm really curious: Those of you that have worked or designed with me, what have you noticed most about my design style? What stands out to you about me that I should really value, or need to improve on, or that you agree or disagree with?

Friday
Mar062009

Crossroads

I painted these as a welcome-home present for Michelle when she was visiting her family last fall.

The idea is, they could be arranged any-which-way and still match up to make some kind of path, but each one is still wildly different.

Thursday
Mar052009

Cactusfruit

Sometimes it's fantastic when it's still, sometimes it's fantastic when it's moving. I appreciate this one for how it will start looking the same, and then suprise me with something different.

Click to read more ...

Tuesday
Mar032009

Zoetrope Matchstickmen

This one was inspired by zoetropes, and also chinese characters.

Click to read more ...

Friday
Feb202009

I Am a Dice: Using Humans as Procedural Content Generators

I'm extremely interested in procedural content generation, but one of my peeves with PCG as a whole is that it tends to be so basic, so single-layered, and fundamentally random. I'm continually thinking of ways to make the generated content more meaningful and rich.

One thing that has come to me lately is the idea of humans being the 'random' element of a procedural system. As I see it, procedural content is made from two things: Rules, and generators. Usually all the interestingness, the gameplay, comes from the rules. The generator is just random noise, or Perlin noise, or a normal distribution. So what if we use humans as the generators?

Now, humans producing content within rules is nothing special: that's what making games is! The trick, I think, is in making their input simple and easy, and building it into the gameplay, so they don't realize they are producing content. Let the rules make it interesting, like in a procedural system. So what does that give us?

Learn from the Board Games

The game that inspired this thought was Taluva. It's a board game where players take turn laying and stacking tiles, and then placing tokens on those tiles. Where it's interesting is that players must place a tile each turn, there are very specific rules for where a tiles can be placed, and the tiles them selves have no value towards winning the game. At the beginning of her turn, a player places a tile in a way that benefits them the best on their next placement or screws over an opponent, and then places a token. After this, the tile 'fades into the board'. This new tile will have an effect on the placement of future tiles and future pieces. But there is never (well, rarely) a feeling of "Ugh! Graham's tile is in my way!" Players don't have any sense of ownership over the tiles. They simply become part of the 'generated terrain'.

Another game that many of you might have played that has a similar is Carcassonne. Again, each tile is very significant and gameplay focused at the time of placement, but quickly becomes just another part of the landscape, keeping the game fresh and unique, just like procedural content is supposed to.

No computer games have come to mind that really exploit this kind of feature. Obviously in many games, strategy games in particular, the actions of the players in the game 'change the landscape' for each other, but it's not in that anonymous, neutral way that procedural content allows.

Theory Without Practice...

So here's a few quick ideas I had for how this could apply to games.

First, a Diabo-style dungeon crawler. A kind of game that relies heavily on PCG for item selection and loot. So imagine this: Every item starts out 'basic'. It's as crummy and useless as possible. But then, through the players direct or indirect actions, they modify and upgrade the weapons. A Copper Dagger becomes a Copper Dagger of Stabbing through repeated use of the stab action. The embedding of a fire rune turns it into a Flaming Copper Dagger of Stabbing. But alas, the time comes when they find a basic Steel Dagger and decide it's time to move on. They sell or drop their old dagger on the ground, and it's now fair game for another player to pick up.

This example might not be immediately useful; a bunch of new systems with no effect on the second player's gameplay. But I'm sure you can start imagining a lot of neat ways to take this to enrich the game and build community.

Another example that jumped to mind was some kind of RTS where after each online skirmish, the map is saved. Each time players start a new skirmish, the map is filled with the remnants of a previous, anonymous battle. Structures and walls make various ready-made bases. Resources have been extracted and redistributed around the map. The remnants of another player's strategy linger in the air. I think this could be cool.

So, any games you can think of where the gameplay of one player is the ambient content of another? Where the actions in the early game shape the late game, but have minimal long-term strategic value for the player? Or any other cool ideas where this could be applied?

Friday
Jan302009

Death is Dead

I was playing Dead Space the other day and was struck by how stupid death is in that game -- and for that matter, most modern, friendly action games. So it's a horror game: One of the key elements of horror (in any medium) is the fear of death. And yet, Dead Space goes out of it's way to make death trivial and non-frightening, with frequent checkpoints, quick respawn cycle, no penalties. This is Friendly Game Design. Keeps players from getting frustrated. But it completely defeats the point of making a game in the horror genre. What to do?

After posing this to various friends, several of them countered with an example from an Ernest Adams Game Design Workshop which dealt with Vikings and Valhalla. It's not simply a game about death, but a constructive sim-game where dying is essential to success. Players must lead their villages to success, dying in glorious battle to earn honour for the village for future generations.

Although this is a brilliant idea that needs to be executed on, it doesn't quite address the problem. In character-centric, story based games like action games, what do you do about death that makes it non-trivial, but also fun?

A Beautiful Finish

I don't think you can do it and still adhere to a specific linear story. Effectively what I'm talking about is writing a story about the player: A record of their successes and shortcomings. If the player makes a critical mistake, how do we acknowledge that as a beautiful part of their experience, rather than a failure to 'beat the game'? I really can't see how this could be done without very sandboxy gameplay, or procedural storytelling, or a whole lot of content. (Please prove me wrong!)

Death is an important and common part of storytelling; it's not difficult to imagine a story in which the player dies. The trick is making the player not feel like they are somehow missing out on further content or a better experience because they died. Closure? Records of their accomplishments? Knowledge that that's as good as it gets (like Pac Man)?

No Rest For the Wicked

Another thing to consider is that most games consider the consequence for failure to be death. But why does that have to be the case? Consider some hypothetical game where you play a vigilante cop trying to take down an international drug lord (creative, huh?). The current mission is to infiltrate the hideout of some dealer, learn what you need to know, and take him out. So you go through the level, guns blazing indiscriminately. Somewhere along the way, you must have missed a healthpack, coz when you get to the last room in the basement, you get mowed down by the dealer's body guards.

In a 'nice' game, you'd respawn back around the last corner. This time you're smarter, so you fire a few shots to lure the guards towards your and take them out one at a time as they come around the corner. But your health is still too low, and they kill you again. So you respawn and try something different. And again. And maybe you run backwards in the level looking for health pickups. Some time later, you've finally passed the obstacle. You get to excute the dealer, but it really doesn't matter anymore -- you don't know why you're even here.

What if instead, you get shot to the ground. Hearing of the intruder's demise, the dealer waltzes up to you -- bleeding and wheezing on the floor -- insults you, and tells his guards to dump you off the pier. So you are evicted from the hideout and taken to the docks. But hey! You're an action hero! You take out the guards and escape back to your lair to reconnoiter. The next mission loads and the story progresses -- somewhat differently on account of your failure -- but carrying the dramatic line in any case.

That Age Old Debate

Really what this comes down to is a question of the effectiveness of games as a storytelling medium. Or rather, how to effectively use games as a storytelling medium. Games that don't focus on authored narrative (Viking Sim Game, Dwarf Fortress, Pac Man) can kill the player in meaningful ways all the time, since they don't have to deal with story content for player death.

What if the author of a game has a specific story to tell? If the player can choose-their-own-adventure the game by dying, does the author get to tell that story of the player? But if the player faces mounting odds, and fails, and then reappears 10 seconds in the past and tries again, until they succeed -- is that really telling the author's story either?

I don't think there are any easy answers to this. But until there are, I don't see myself enjoying horror games for a while.