May 13th, 2008 at 11:31 pm

Applying Personas to Game Design

In the context of software development, personas are fictional characters created to represent the userbase of a product.  They’re a common technique in software development when dealing with user-centered design, as it allows developers to keep in mind a user’s goal and methods of interactivity.  For more information, take a look at the wikipedia page.  Let’s take a look at how personas can be translated from software development to be useful tools for game designers.

Primarily, the purpose of personas is to allow you to keep your players in mind throughout the design and development phases.  All gamers are not the same — they have individual wants and needs when they play a game.  Many designers will look at demographics for their target audience, but designing for a vague stereotype will not satisfy these individual characteristics.

They allow you to see from the player’s perspective.  By creating a fictional character with human attributes, you gain the ability to empathize with them and visualize their interaction with your game.  When using these personas, you should visualize the persona as being real, and follow their actions as they step through your game.  What difficulties do they encounter?  What features could be added to let them reach their goal of having fun? What features do they ignore?

You also avoid the pitfall of your perspective being the only input on the design process.  Being the developer, your view on the system is biased - you already know how everything works, in addition to your play style being only one of many.

Unnecessary features or aspects can be cut.  Resources are limited, and key features should be implemented first.  If it isn’t a feature that players desire, why waste time working on it?  Let’s say I’ve got a platformer game and I’m designing the map system.  Is it important that the player see the entire game world at once or just the local area?  Will the player ever need to place map notes so he/she can find that place again?  By walking through how a player interacts with the game, you can discover if these features will ever actually be used.  These features may be useless when applied to your specific game.  Even though your developers can do it, maybe in just a few hours, if it’s unnecessary for your players, it’s a waste of time to implement.

There are no rules to defining a persona: you include what you believe to be important or relevant.  First, let’s take a look at some common demographic factors:

  • Name
  • Age
  • Gender
  • Background - A short biography
  • Money - How much do they budget for gaming?
  • Gaming platforms available
  • Skill set - Are they a slow typer? Can they only coordinate one hand at a time?
  • Usage patterns - When and how often do they play games?

These are all characteristics used commonly in software development personas, but let’s take a look at a few characteristics that drive gamers and affect their playing experience.

  • Is the gamer a perfectionist?  Lots of gamers love finding all items and Easter eggs to get 100% completion.
  • Emotional investment - Does the player care about emotional investment?  If you’re designing a game that you hope will move players emotionally, you must also factor in that not all players care about it.  If you don’t, you’re splitting your player base in half.
  • Competition - Is the player constantly seeking to be #1 on the scoreboards?
  • Playing environment - If I’m gaming in a dark basement, I’ll certainly have a different experience with immersion than if I’m playing with a bunch of friends at a party or in a living room with my family.
  • Aggressive or tactical - Does the player like to rush headlong into encounters or stay back and let his/her teammates take the frontlines?

These are only a few characteristics.  Brainstorm more factors that define gamers and include them in your design process - some of them can be specific to game genres.  Create rewards for these player characteristics in your game design.  For example, if your game has item collection, it might be beneficial to add a completion aspect to it - then these perfectionists can shoot for 100%.

Here are a few things to keep in mind while designing your personas:

  • Give the personas a background story, but don’t write a novel: focus on the goals of the player and relevant details.
  • Your personas may begin as stereotypes of demographic segments.  Ideally, however, you will continue refactoring them into something more useful and usable as you encounter more possibilities of player behaviour patterns.
  • Give them goals and motivations!  Satisfying these criteria is your primary goal as the designer.  Be specific, as in the above examples: of course the player wants to have fun, but what does having fun in a game mean to them?
  • Avoid designing personas to fit your system! If you aren’t encountering any issues, you’re most likely doing something wrong.  When visualizing a persona’s interaction with your game, it should not always be the same as yours.  It should encounter usability issues.
  • Different personas might follow roughly many of the same paths through a game, but should differ in some ways.  If they become too similar, drop one or merge them.
  • Keep your personas in mind throughout the design & development process.  Once you’ve created them and thought through a scenario or two, you aren’t done.  Continue to use them often, as your project evolves and features change, so will the persona’s interaction with the system.

So what shouldn’t you do with personas?  Don’t use them as a replacement for play testing. Personas are faster, easier, and cheaper to use while making design decisions, and can be used from the beginning of the design phase until project completion, while player feedback has to wait until development begins.  But play testing still has the advantage that real players are playing through your system, which is invaluable and free of developer bias.

Personas are a powerful tool that allow a quick and easy way to evaluate the effectiveness of your design.  Many of the realizations discovered are merely good game design practices that you’ve overlooked, while others might have been found by play testers down the road.  The value in personas lies in their ease of use for simulating multiple perspectives on your game design, and ensuring that you’re satisfying your players’ goals at every step in the development and design process.

If I get any requests for a part 2, I’ll write more and give concrete examples of personas and how to use them.

March 31st, 2008 at 5:05 am

PyWeek

I’m working on a game with James Turk this week for the PyWeek competition. We’re writing a robot battle arena game where you write the AI scripts for your robot and pit them against each other. Hopefully by the end of the week I’ll have learned a bit of python, pyglet, and cocos, and we’ll have a fun little game. I’ll try and post some updates as development moves along.

Last night I attended a Barack Obama rally here on campus, headed by Kal Penn of Kumar/Taj fame. I’m getting pretty excited about this year’s election, it looks like Indiana’s vote will actually matter.

Frostwave is still on hold until life slows down a bit for Vedran & I, summer is only a month away for me, so maybe there’s still hope.

February 23rd, 2008 at 3:54 am

Indie Game Design Documents

I was reading a series of interesting interviews by 1up, and thought this excerpt by Jonathan Mak (developer of Everyday Shooter) was interesting:

“…don’t make a design doc. Forget the design docing. Whatever the way Ubisoft does it, don’t do it. Just don’t do it. There’s no need to do that. They need to do it because they have to make money, or else people lose jobs. You don’t have to that. You always have a job. You employ yourself. The deal is, what I normally do is, I do have a technical stage where I make this engine. But I make sure the engine is really hackable so that when I do the creative part, which is trying out game ideas, I can just try them out. I don’t have to worry about how it’s going to be implemented. In fact a lot of times, in terms of programming, I do things the wrong way just because I know it’s faster. Just so I can see the idea. Don’t even worry about doing things the proper way. What you have to worry about is getting your idea to the screen. That’s really what it is. You have an idea? Try it. It might be fun. Maybe this doesn’t make much sense for other people, but usually my ideas are fairly small, or at least bite-size in that I can try a section of it to see if it’s fun. For a shooter, it’s very easy to try different ideas because you already have this built in framework. I guess a lot of people would want to try ideas that are so new, there are no built in framework — I mean like a convention…”

My first reaction - “that’s ridiculous. Design documents are necessary!” Then, of course, I began to reconsider - are they? For the last couple months we’ve been using an internal mediaWiki installation for design on our projects, and I’ve been obsessing over organization. But on second thought, I’m not sure how much of it is really necessary.

Our team consists of only 2 people. All of our core ideas are discussed with one another via Skype or IM - and then jotted down sloppily in a scrap page on the wiki so we remember them. Eventually, I’ll get around to fleshing them out nicely. But Vedran rarely even looks at the page to find stuff out - he’s got the basic idea in his head, and the rest hardly matters to him. If he needs to know something he’ll probably just ask me anyhow.

So, I don’t make the design doc for Vedran - then who I am making it for? Me? Well, a lot of the ideas are experimental. Indeed, if it doesn’t work out, it’d have been quicker to scrap the design doc and whip up a prototype instead.

I find that I’m forced to come to agreement with Jonathan in at least some way. Perhaps my perfectly organized design document isn’t necessary for our informal team of 2 experimental gameplay productions - we’re not sending the document off to anyone for funding. Still, I feel like some manner of organization is necessary for any project with larger than one member that’ll take a few months.

The difference, I believe, is that it should be written after the gameplay prototyping is complete - or the base concept confirmed - before the rest of the content & theme is designed. These type of games, by nature, can’t be visualized properly in your head - you need to interact with them to get the feel of how they work.

February 21st, 2008 at 3:57 am

Update

We’re still finishing up our XNA framework/engine (Frostwave 2D) - we now have spatial partitioning and better scene management, but the code needs to be cleaned up and bugs fixed before we start moving ahead. The design for the next game is more or less complete, and soon we’ll have a good start on it. Hopefully we’ll be able post some information on it in a couple months, but we don’t have a schedule planned out yet.

We’re planning on making the code for Frostwave & the next game open source after it’s complete.

December 2nd, 2007 at 4:19 am

XNA Life 0.1

Vedran and I made a quick game using technology from Ball Toss. It’s a recreation of Game of Life by John Conway. More information at www.snowfallmedia.com. Here’s the youtube video:

[youtube=http://www.youtube.com/watch?v=BM0ghwUbUpA&rel=1]

November 26th, 2007 at 5:31 am

Ball Toss 1.0 Complete

Ball Toss 1.0 is done! Check it out here.  More information and screenshots can be found there, but here’s a quick shot:

Ball Toss Screenshot 1

By visiting the above link you’ll also notice the new Snowfall Media web site, which was actually uploaded early last week.  It’s a WordPress installation utilizing a nice theme by a fellow named Eyoung, slightly modified for our purposes.

Now that Ball Toss is done, we’re going to be taking a short break and then dive back in.  First, we’ll be working from the ground up on developing a more robust framework.  We’ll be in design phase for quite a while, most likely one to two months, though we haven’t looked at any dates yet.  We’ll probably be designing both technology and games by wiki from this point on, as it’s a great tool for collaboration and allows for much quicker editing and sharing than a Word document.   After the design phase is done, we will hopefully be starting our next game, which should be quite a bit better now that we’ve got more experience under our belts.

On a more personal note, I’ve obtained a dry erase board, which I seem to have an irrational love for.  It’s great for design and coding, and managing item lists.  I’ve also just ordered a bluetooth Wacom, for art and design purposes, obviously.  Also got a headset, for more efficient communication with Vedran… after all, we are a few thousand miles apart (plus a few).  Broke down and bought Final Fantasy XII: Revenant Wings too.  Also, I did a couple more sketches, but haven’t had much time to finish them up.

So I’m pretty excited about completing Ball Toss.  Even though it’s just a small game prototype, we put a lot of work into it and I’m pretty excited about what we’ve got for the time it took.  Well, we can only get better from here!

November 12th, 2007 at 8:59 am

Snowfall Media

Vedran and I, the “duo de destiny” as we have been tagged, have been named.  While in the past we have been called many things, including, but not limited to, ‘White Boiz’, ‘AmeriCanadia’, and ‘Paranemic Games’, those are no more.  We’re officially Snowfall Media.

We’ve got our own little space on the internet now, which can be found at www.snowfallmedia.com.  The webspace is generously offered by James Turk, who is 2 types of awesome and 3 parts robot.  The page is conspicuously devoid of content, as we’ve just set it up and really my time is being spent on development.  I’ve little motivation to develop a site when there’s no content to insert, but I may set up Wordpress on it soon.

On other fronts, I bought some art supplies and did some sketching and design.  Fun.

November 10th, 2007 at 2:27 pm

BT1 Tech Complete

Ball Toss milestone 1 is complete, which means the tech and design are final. Since the last post, I’ve actually completed all the art required for Ball Toss, in addition to various other small artisms. Since I’m done with all the art and design required already, both Vedran and I will be doing code for the next 2 weeks. Milestone 2 will result in the final Ball Toss 1 prototype, which I summed up in the previous entry. Milestone 2 is detailed and due Sunday, November 25th.

Kyle will be helping us as a tester later on.

Check out Vedran’s blog, as I’m sure he’ll post a video of the scrolling code or more exciting information later.

November 4th, 2007 at 4:56 am

Ball Toss Introduction

Alright, I spent last night doing layout sketches of each of the screens in the prototype we’re working on. I then created a mockup of how the general art style will look of the main game screen.

Ball Toss Lv2 Prototype

As it’s a mockup, I got a little lazy so it’s not as polished as the final product. But here’s a short explanation of the prototype…

You drag the mouse and release in order to launch the ball, with the intention of it entering the goal. The goal is highlighted by the gigantic arrow. Nice, eh? Your score is determined by your horizontal distance from the goal. You can scroll as far away from the goal as you like.

Keep in mind the game is on a tight schedule, and we have limited time and technology as it is, so the design is purposefully kept simple to ensure that it’s completed.

November 3rd, 2007 at 1:34 am

Handy Apps

I’ve come across several applications which I feel greatly enhance my computing experience, or are just damn handy to use. So I’ve decided to make a quick list of a few of them. I’m not going to go in-depth about how to use them, post screenshots or anything - I’d say you’re capable of handling that yourself, as these are mostly intuitive programs by nature. If you do need help, let me know.

Some of these are well-known, others possibly less so. I probably discovered most of these through Lifehacker, so thanks to the great folks there.

Windows XP

  • WinKey
    • Allows for customizable shortcuts to basically anything, such as folders or programs.
  • WinSplit Revolution

    • Manage your screen space better with excellent hot keys.
  • Launchy
    • A QuickSilver-ish program for windows, I find this to be excellent in doing away with the archaic start menu, and even much of the file system. With a quick button press, open this up and start typing what you’re looking for, and hit enter. Also extendable and with other handy features, such as easy google searching.
  • Revo Uninstaller
    • The windows Add/Remove programs has always been a beast to me, taking forever to load, and program setups never completely remove themselves from your computer. Revo uninstaller can aid that process by asking to delete leftover files, registry entries. Also contains a startup programs manager, and is much more efficient.
  • Admiral
    • Expose-like window preview management for Windows, plus other. In the minimization feature, it appears that it cannot preview some windows, possibly GTK-powered ones, which is actually a bit annoying, but I’ve yet to find a better free alternative for XP.
    • I’ve decided Admiral sucks. After trying out various other Expose-like functions for XP, it looks like none of them work as easily, fluidly, and without setbacks as they should. I’d rather do without for now.
  • Pidgin
    • Cross-platform multiprotocol IM client with tabbed chatting. Supports all major protocols, such as AIM, MSN, and Yahoo, and everything else.
  • iTLU
    • Synchronizes your iTunes library to your music directories. This can be automated by creating a batch file and scheduling it, so you never have to worry about updating your iTunes manually again, which is explained here at lifehacker. This can even update metadata.

Web Apps

  • Google Reader
    • Google’s live feeds reader, which is great for keeping me from manually checking my friends’ blogs, and lets me read a few news sites centrally in one location.
  • Google Calendar
    • So far, the only great calendar application I’ve found usable for XP. Great for comparing schedules with friends and keeping track of yourself.
  • Google Notebook
    • An excellent, lesser known google application for taking notes in a ‘notebook’ fashion. With google’s search capabilities, this is just a hands-down excellent tool for writing down code snippets, thoughts, quotes, links, or anything that you may want to use again later.
  • Remember the Milk
    • Excellent task-list and to-do site. Can be integrated with Google Calendar or other calendars, or as a module on IG or NetVibes.
  • ColorBlender
    • Handy web application for designing colour schemes. There are fancier ones available, but I’d rather not waste hard drive space on this when all I need is something simple like ColorBlender.
  • Mint
    • New beta money management service online. Tracks all transactions made with your bank accounts, and gives feedback (pretty charts) based on spending categories to help save money or analyze where it’s going. So far, I’ve been unable to use it due to my online banking account being inaccessible, but from others I have heard it’s really excellent, and I’m looking forward to using it.

I’ve got a list of more stuff that needs to be looked into. If you know of any more great apps, let me know. I’ll get around to updating this list when I work on it more, and next time I’ll try to include some Ubuntu apps.