Monday, August 17, 2009

Shared Worlds: Recursive Cooking Structures

Before I properly intro this particular project concept, I want to bat around some of the subsystems of the game, since it's a bit of an agglomeration. The first system in question is the cooking interface, mainly because it was the most recent system that caught my attention and received a little more fleshing out as a result.

I've always enjoyed life-sim games, ever since the original Harvest Moon on the SNES. Something I've wanted to explore in these types of games is a more robust cooking system, where the player can improvise and even devise his own dishes. Yes, this sounds kind of lame but I'm a sucker for granular crafting systems and the player expressions that can be found within.

The Structure

The path I'm thinking of taking is a recursive, lisp-style structure to a recipe. Working from the top down, the recipe is defined as processes that have parameters that can be the output of other processes. A rough example in some kind of syntactical language might look something like this:

Chili:
simmer[30 minutes,low](mix(brown(ground beef),chop[fine](onion[1/2 medium]),chop[coarse](bell pepper[1 whole],black beans[1 can, not drained],diced tomatoes[2 cans, not drained],tomato sauce[2 cans],))

Chili Spice Mix:
mix(cumin[1 T],sage[1 T],garlic powder[2 t],black pepper[1/2 t],cayenne pepper[1/2 t],cinnamon[1 pinch])

This will probably be more of an XML hierarchy structure in the final version, but this was the first way it popped into my head. Chili, in this case, is the result of 'simmering' several ingredients, including one that is a process, 'browning' with an ingredient 'ground beef'. Another ingredient is 'chili spice mix', which is another recipe of a sort that involves mixing several other ingredients.

The nesting allows for as much depth as I want, and the player can potentially get pretty creative with dishes.

Verbs & Tools

Processes in the above recipe would be executed with different in-game objects the player would need access to. Mixing would require a bowl of some sort, simmering would require a skillet and stove-top. The actual interface for this is still up in the air, but simply having the items in a kitchen should be adequate for now. I'm not interested in doing some sort of mini-game for each step of the recipe at this point.

So each tool has a list of verbs it can enact. The skillet can saute, simmer, fry, brown, etc. Each ingredient has a list of verbs that work on it. Meat can be browned, fried, boiled, broiled, etc. Each step in a recipe then has verbs that are required for that node to be completed, as shown above.

Tool Quality, Ingredient flavor, Character skill

I'm not of the camp that thinks every facet of a game should impact the overarching systems in some significant way. Sometimes expression and choice just for the sake of it is ok. (The extreme case of this for me was Spore, which I think took choice irrelevance a little too far) Having said that, I plan for the choices available in this cooking system to impact and have an effect on the larger systems in the game.

Feeding into this system will be systemic properties of the entities involved, namely the player caharacter, the ingredients and the tools he is using. A lot of these will be raw numbers (e.g. t
ool quality, the character's cooking skill) that can tally up pretty directly to a quality rating, maybe involving some dice rolling behind the scenes. Something I'd also like to employ is a flavor harmony system (discoverable by the player in some fashion) where complementary ingredients will enhance a dish. FoodPairing is a good example of something I'd like to shoot for.

Higher quality means a 'better' consumable for the player. I'm thinking of swiping the stomach meter from Contact (food based items take up space in the stomach when used, and slowly digest, making room for more) and making higher quality foods give better benefit for less real estate in the stomach. (food slots and 'density' colors, stat effects for duration of occupancy in stomach, 'hungry' status effect)

The Hierarchy

To allow for ingredient abstraction (e.g. A recipe simply calling for 'vegetables') I plan on implementing a class system for ingredients. This will tie into the world entities the player will be collecting for use in cooking, and will have a pretty standard object oriented tree structure. There will be higher level distinctions like 'meat', 'fuit', 'vegetable', and within those classes will be progressively finer distinctions, based on how much detail I want to put into the world and the things that can be harvested from it.

This also allows for recipes to call for more arbitrary ingredients. An omelet could optionally include X number of 'vegetables'. A kabob could involve grilled 'meat' and grilled 'vegetables'.

In the next post on this system, I'll go into:

  • Scaling & Automation
    Making recipes serve an arbitrary number of people. Finding ways to make the process for the player simpler (choosing 'make chili') after the first time the recipe has been completed. Meshing with other systems so the player can make devices that assemble food from recipes.
  • Accessibility & Interface
    It's of utmost importance to me that this system is accessible to players. I want to expose all the working parts that the player needs to see to form a model of the system, hide all the unnecessary bits behind the scenes and provide a smooth interface to manipulate the system as easily as possible.
  • Shortcomings
    Explore the shortcomings of the system, ways it could be improved, etc.

Labels: , , ,

Thursday, July 30, 2009

Identity: Interiors, Exteriors

Here are the plans for my next steps with the Relationship/Identity prototype.

Character Creation
A small bit of preamble for the player to establish some preliminary settings before entering the sim.

Gender
Symbolic abstraction of gender. Circle or square, I'm thinking.

Preference
Sort of a sexual preference where you choose one of the genders that your character will be attracted to. This will tie into more advanced relationship modeling later where characters can perhaps fall in love, maybe even have offspring? Don't know if reproduction throws noise into the message or not yet.

Attitude/Color
This will be your starting color. It represents your starting attitude/worldview/personality, and will be more of a part of your character than in the current version. More on this in the next section.

Internal vs External Color
The point of this exercise is to explore the different facades we use when dealing with other people, as well as the bonds that form between people that share a certain outlook on life. Currently, the player is a totally free agent, exempt from any kind of grounding since he can change his color at will. I'm going to implement an 'internal color' in addition to an 'external color' to represent your real feelings vs those you're projecting to those around you.

The external color will be bound by the internal, so you can only stray a certain distance from your true feelings. If you express a color other than your internal color for a while, your internal color will begin to slide towards the external one. This might be a constant gradual process so there will still be alteration if you're frequently flitting between different external colors.

At some point I'd like to explore the concept of chroma representing the purity of someone's convictions. As they glide closer to grey,

Familiarity
When the player first sees a new character they'll appear gray, completely neutral and 'colorless'. The more the player stays within proximity of a character, the more the exterior color will begin to show. I'm thinking about doing this one channel at a time (R,G,B) instead of fading them all in at once, just to delay the hue reveal so the player won't be able to adapt his exterior color at the first faint sign of color. This might be ridiculous though, and I'll play around with the fade in to see what feels right.

After getting to know a character for longer, the interior color will begin to show itself. Matching color with the interior color of a character might result in stronger bonds of friendship or romance. Still thinking about how much complexity I want to include in the relationship model.

External Influences
Dramatic events shape our perspective on the world. Getting mugged, surviving a car crash, losing a loved one, these can all color the way we look at things. My first pass at implementing this sort of phenomenon will be colored projectiles that randomly fire into the scene, re-coloring the first character they collide with. This character is changed forever, both internally and externally.

I'm beginning to wonder if keeping a dev blog this detailed is going to diminish the impact of the final product, or if it's better to put details out in the open like this for critique and feedback. Anyone commenting, feel free to chime in on this topic. Curious what people think.

I'm also looking into a better way to make this available to people, as I'm currently coding in an XNA framework and using a 360 gamepad, which makes for a decidedly unportable experience.

Labels: , ,

Friday, July 24, 2009

Identity: First Steps

I've begun to work more on the prototype for Identity. (Initial post here) I'd initially worked out the color picker interface with a moving avatar and then put the thing down for a while. I've since revisited the little fledgling game and added the characters you'll interact with.

Recapping from the first post, the NPCs are letters of the alphabet. This keeps things as simple as possible while letting the player remember specific characters pretty easily.

Each character is introduced to the world with a random color. This represents a personality type and general mindset. The character then has some basic directives.

  • Wander around, looking for others.
  • If someone is similar to me, approach them.
  • If someone is very dissimilar to me, avoid them.
  • If I'm around someone similar long enough, alter my attitude(color) to be more like them.

The player is perceived by these entities, but is otherwise a free agent. He can change his color at will, and they will act accordingly.

Once I got the basic attraction/repulsion/mimicry behavior in, I was able to watch patterns emerge. One thing that I expected was cliques. You'd get clusters of like minded people that would rove about, accreting others who were anywhere close to similarly minded. Unchecked, the system would stabilize in 2 or 3 major factions.

What I didn't expect was peer pressure. When I was able to go up to a small group, 1-5, I could easily match their color then slowly sway the group along the spectrum to whatever hue I wanted. With a large group, however, every unit was mimicking its neighbor, so I had a lot more competition for swaying a unit to change its hue. The tactic I usually ended up resorting to was physically pushing a character away from the group, then coercing it before it could return to the others.

My next steps will be to make the general behaviors more subtle, and to try and work in an influence stat, since some characters are more likely to sway others to their color than others.

Video footage below:




Labels: , ,

Wednesday, July 22, 2009

The Burden of Choice

Games are interactive systems. The fidelity of a player's choices determines the nuance with which he can affect and express himself within that system. This goes broad as well as deep. More verbs = more potential choices. More 'adverbs' means greater control over the specifics of any given interaction (e.g. maim vs. kill, flirt vs. marry).

While you could argue that more of either of these axes would make for a richer gameplay experience, I think there are ramifications to consider when constructing a possibility space and the verb set the player can use to poke, prod and explore that space.

Feedback and Consistency
Can the player form a model of the system in his head and use that to anticipate the consequences of his actions?

This is a fairly prevalent point in Norman's The Design of Everyday Things (1). If the player doesn't have a clear idea of how the game world's components interact, he can't make an informed choice when acting on that world. For all the design work that might have gone into building the system, if that model is too opaque, the player might as well be using brute force trial and error to achieve his goals.

Harvey Smith addressed this at his GDC talk in 2002 on Systemic Level Design (2), and it was a real eye opener when I was getting my start as a designer. The idea is that you build a system with components that are granular enough to interact in interesting emergent ways and then maintain a strict consistency with the way these things behave. The more you frame your environments and scenarios around these consistent building blocks, the more a player can observe a scenario, form a plan and act on it, either getting the thrill of seeing his plan come to fruition or learning from his mistakes in a way that doesn't feel like the system cheated him.

Does the system acknowledge when the player is making a choice that impacts the state of the game world?

Games have differing levels of agency, the idea that the game is acknowledging that the player is acting within its world and is having some sort of impact. At the low level, this can be as simple as particle effects erupting from a surface as the player sprays it with gunfire. At higher levels, the player could impress a character in a dialogue exchange, resulting in an entire mission tree appearing at a later point in the game.

The issue that arises is how the player knows that his actions will have repercussions and at what agency level of feedback. Take GTA IV, for instance. The player can obliterate literally hundreds of people with no lasting effect on the game world. The game says "hey, you wanted to run over a guy, watch him crumple and bounce off of the hood of your car". During certain scripted sequences however, a large prompt appears on the screen giving the player the option to kill or spare specific individuals. In this case the game is trying to let you know your choice here will likely impact the narrative or mission structure of the game at a later date.

The thing to note here is that the game asks the player to step outside of system space to make the 'important' decision. The player doesn't really get to make the decision with his native tools so the whole arrangement feels artificial. The game implies that what the player can do with his standard interaction set doesn't really matter in the grand scheme, as major events will play out the same way regardless.

High impact choices like these are more sparse in narrative heavy games like the recent GTA games. This is because content is expensive, and generating branches of content that nobody will see generally gets a thumbs down from management types. More player driven games like Civilization or (yet again) Dwarf Fortress have a much more granular choice structure. Almost everything the player can do in these games has lasting implications that will sculpt the emerging narrative and interaction space down the line. Crawford touches on this a bit when he talks about Process Intensity (3). By leveraging the ability for the machine to generate content, you can often allow the player to explore a wider range of options as situations and locations you couldn't anticipate or wouldn't have time to build can be created on the fly by the computer. This is a bit hand-wavy, as there are many more details to building good procedural content, but it'll do for my purposes for now.

It's also worth mentioning that supporting inaction as a player option when he's using his native verb set is tricky. You're basically asking the player to walk away in light of instructions possibly to the contrary. An example would be person X telling you to kill person Y if you want his help. The player would probably assume this was the only valid option when the alternative is probably something like walking through a door or waiting around for a certain number of seconds. In this case the UI pop-up is alluring if you can't think of a clever way to contextualize the scene or provide some dialogue that doesn't seem too contrived.

Reflection
When the player is presented with the consequences of his choices, does he recognize the causal relationship?

Reflection is akin to feedback, but it's more of a retrospective thing. It's the ability for a player to observe the changes he's affected in the game world and recognize that he had an affect, as well as possibly gauge what might have happened otherwise. For these correspondences to be apparent to the player, the chain of events between cause and effect needs to be well presented. This means the event sequences should be fairly logical, easy to parse and that the time between cause and effect fairly short. I haven't gotten to play it yet, but I've heard The Witcher does a good job of showing the player the trail of events from A to B whenever he's confronted with the repercussions of his choices from earlier in the game.

If choice effects aren't made apparent, the player might as well be uncovering a prescribed sequence of events. Branching paths with subtle outcomes could just feel like a magician's choice (4) where the plot is predetermined but the player is given the illusion of a narrative rudder.

There are a couple of other ways that a player's choices can be presented to him in the context of the path not taken.

One option is a short but deep game cycle. Emphasis in this case is placed on replaying the game to explore all of the possibilities. The brevity of the game is to help make the development more manageable as well as allow the player time to check out multiple scenarios. I've posted a couple of times on this in the past(5)(6), and I think it's a model that should be explored more. Thus far, the most notable examples of this kind of idea come from Daniel Benmergui(7) and Gregory Weir(8).

Another idea is to facilitate the comparison of worlds and characters between players. Spore is a decent example of this, although the differences between user choices are primarily cosmetic and have little to no impact on the systems of the game. The Sims would probably be closer to a show and tell system of people demonstrating the range of possibilities the game has to offer to one another. Another good example is Animal Crossing. More than merely seeing how your friend's world diverges from your own, you can explore it with him and experience the differences firsthand, even bringing back parts of it to use in your own game world.

Paralysis
Does the player have enough information to make a choice from the available options? Are there so many options that the player can't make a clear distinction between them?

There's nothing more intimidating than a blank sheet of paper (looking at my post frequency confirms this). If a player is thrown into the thick of important decision making with little context, or simply given too many options at once, he can freeze up. Each option can either seem equally valid or vary in such minute ways that the 'correct' path is unclear. There's a good TED talk by a guy named Barry Schwartz that addresses this very issue. (9)

There are a few ways to mitigate negative side effects when presenting players with a vast array of options. One is to introduce verbs and player tools piecemeal, allowing the player to get comfortable with a smaller set of choices available at any given moment before adding more. Once the player gets used to the broader palette of options, he can begin to look at scenarios in terms of the available tools and proceed from there.

Another is to rely on stereotypes. If you have a set of commonly accepted attributes that the player is likely to be familiar with, you have a jumping off point for a broader range of options. If you give the player a choice of archetypes to start a game with, for instance, you could provide the standard fare as a base level. Thieves are sneaky, warriors are tough, etc. As the game progresses, you could offer more nuanced sub-classes of these characters that could refine the set of verbs the player is using as he plays. Your initial 5 or 6 basic classes that rely on general assumptions could blossom into 15 or 20 without rattling the player if you pace it right. The Elder Scrolls games do this pretty well by offering different ways to start. You can dive into the pool of options straight away, or you can let them ease you into it by choosing pre-made packages with pretty clear explanations on what to expect, in addition to the standard fare fantasy classes most people recognize.

I think a decent illustration of overwhelming choice is the Oblivion character creation system. At first blush, all the sliders that control every aspect of the character's face can be overwhelming. If the player has a plan up front however, usually something like 'I want to make my own face', then these tools become useful as a means to an end. From a bottom-up approach, however, the player can tell little difference between a 56% and 57% forehead-sellion-nose ratio.

Wrap Up
I'd intended on adding a section about user interface an accessibility, but it ended up leaning more on the side of usability design and not just about choices. The main take away from that was that the UI is not only the window the player uses to look in on the world within the game, but it's also his hands and feet. What is the interface (controller input, UI) telling the player he can or can't do? What information is being presented and what is being hidden behind layers of menus? All of these feed into the player's internal model of the system and how he thinks he can interact with it and what options are valued above others.

And that's about it. Just food for thought when you're constructing choice systems and verb sets in your games, and some of the implications different decisions can have on the way your game is experienced and understood.

References
  1. The Design of Everyday Things
  2. Systemic Level Design slides:
    Harvey's site: http://www.witchboy.net/2002/04/
    My own pilfered copy to spare you a trip to Fileplanet
  3. http://www.erasmatazz.com/library/JCGD_Volume_1/Process_Intensity.html
  4. http://en.wikipedia.org/wiki/Card_force#Magician.27s_Choice
  5. http://www.kongregate.com/accounts/danielben
  6. http://ludusnovus.net/my-games/the-majesty-of-colors/
  7. Reflection: Why the Indigo Prophecy Demo Was Better Than the Full Game
  8. The Ferry: Short but Deep Webs of Causality
  9. http://www.ted.com/talks/barry_schwartz_on_the_paradox_of_choice.html

Labels: ,

Tuesday, February 03, 2009

Lessons From Other Media

I've found that if I give myself time to percolate an idea, it never ends up getting posted. So here's something I started writing about the games and art thing, more focused on what we can learn about formal design elements than debating what art is or isn't. I think it comes off a bit snotty in places, so be warned. I'll probably continue this as a series exploring some parallels between different media as I come across them.

After a few years majoring in fine art in college and a few years as a game designer, my definition of art is as follows:

An idea intentionally expressed through a medium.

There. Pretty simple.

This, of course, includes games. I don't think I have to convince you, if you're reading this, that our medium is a valid form of artistic expression. You get it, and if not I'm probably not going to convince you here. The whole what is/isn't art conversation has served as pretentious lip fodder at parties well before video games came around anyway, and what interests me as a designer is what makes good art.

There are good and bad examples to be seen in every medium, from Mozart to the latest corporate spawned pop drivel, from Kandinsky to Kinkade. What separates the chaff from the wheat is the potency (and honesty) of the message combined with the skillful use of formal elements. These formal elements, like visual design principles or the interactions of game mechanics, act as amplifiers that can make the message speak louder. If they are used improperly, however, they can drown the message in white noise or negate it entirely (hello, dissonance). In some cases, this can be a fairly one sided equation. The message can be so powerful that little executive finesse is required for it to speak to an audience. On the flip-side some purely concrete works (Mondrian, Tetris) stand solely on their formal merits, where their messages are a sort of meta-expression about themselves and nothing more.


I think some tried and true lessons from the visual medium could offer us some insight in the interactive field. Let's take something like Munch's The Scream as an example.



Ripped straight from Wikipedia, Munch's inspiration for the painting:

"I was walking along a path with two friends—the sun was setting—suddenly the sky turned blood red—I paused, feeling exhausted, and leaned on the fence—there was blood and tongues of fire above the blue-black fjord and the city—my friends walked on, and I stood there trembling with anxiety—and I sensed an infinite scream passing through nature."

The article then goes on to postulate what could have made the sky red, or whether or not Munch was being literal or expressive, etc. I think this might be useful for an academic studying some sort of contextual or historical positioning of the work, but for the end user, the observer, all of this is useless. You can't expect deep resonance from a work that relies on someone standing in front of it to explain each brushstroke. The aesthetic message has to hit the viewer through the power of the image. That's why it's a painting and not a novella.

When the viewer first looks at The Scream he gets that message immediately, like a shotgun blast. Munch achieves this with several tools. The first couple of things are sort of narrative, contextual supports.

Title
First, the name itself sets up a preconceived expectation in the viewer. This seems like a pretty obvious concept, but I think it's worth noting just to be thorough. When someone says, "Let's go look at 'The Scream'", you psychologically set yourself up for something nerve wracking. The same thing goes for an interactive experience. If a game is called "Blood Dungeon" and you start out in a field full of bunnies, you're going to constantly be expecting things to go to hell at some point. This can be used to reinforce a mood or establish it prior to the user's exposure. Alternately this can be used to put the user on uneven footing by giving vague or contrary information. Part of using a formal system is knowing when to subvert it.

Subject Matter
Next is the subject matter. Again, this is narrative and contextual and not necessarily a formal element. Formality vs narrative has been a prevalent issue in fine art just as much as it has in games. Personally, I don't see the story versus gameplay debate as a rift between opposing factions as much as ludo-narrative axes that can be expressed orthogonally. In the case of The Scream, the screaming person in the foreground can't be ignored as an agent of emotional impact, a conduit of the message.

Now on to the formal elements, the properties of the work that are native to the medium.

Nervous Marks
The very nature of the gestural marks in the work depicts a nervous sense of motion, vibration almost. You can feel the artist's hand as he put down the marks with his brush. The whole thing is organic and undulating with few spaces for the eye to rest calmly. If you look at the bridge, however, you'll find more stable linear elements, but these serve mainly to make the wavy marks look even more wavy in contrast. Pushing agents like this can accentuate the qualities of contrasting elements if they're used in the right proportions.

Distortions
The figures and palette of this piece aren't very naturalistic at all. The people are recognizable enough to sort of resonate with your empathic core, but are distorted to create a great sense of unease. The contortions look terribly uncomfortable, and part of us can empathize and feel that discomfort as well. The palette is a departure from reality as well, with the reddish orange color taking a prominent role. This is not just an unusual color for the sky, but a very aggressive color as well. Add in the blues and greenish hues and more vibration is added through simultaneous contrast.

In games we have complete control over the laws of nature. If we want to empower the player, we can make him jump yards into the air or run 100 miles an hour. If we want to invoke helplessness we can slow him to a crawl or make him fragile. We are, after all, giving simulations opinions here, so our every physical formula is an expression on how we want our micro worlds to be.

Graphic Elements
By graphic I'm referring to flat 2d elements, not images on a screen In addition to the emotionally charged elements, there are forces at work to ensure the work remains graphic, flat, embedded in the picture plane. The background is a warmer color, so it advances, negating depth. The whole thing is permeated by a reddish ground color, which holds it all together. There's no modeling of shadow or highlight throughout the work. The perspective lines also fall along structural format lines, rooting them more in the 2d plane than a depiction of 3d space.

For a 2d work to effectively engage a viewer, it has to play to its strengths, the 2d plane. Graphic elements like I mentioned above can reinforce the 2d nature of a work and cause the viewer to engage it as shapes on a plane rather than illustrative simulacra. Linear perspective is an artificial system that is used to evoke space, but the sight lines can be combined with structural lines or subverted in other image-serving ways to negate space while still sort of 'referring to' it. Kind of having your cake and eating it too, but it's all a matter of knowing the rules and how to bend them.


Chuck Close: Abstract Artist

I believe this and other photo-realistic attempts at art correspond pretty closely to the holy grail of simulatory verisimilitude in games. Even at the highest fidelity of rendering, a 2d work is still abstract. The image is flat while the subject matter is three dimensional. The palette won't be 100% accurate. If you magnify the work, you won't be able to see cells, molecules, etc. Yes, this is a bit obvious but the point is that you have to stop somewhere in your depiction of reality, and that's where the designer's voice can be found. I think that you can give the player the feeling of depth and choice without trying to turn the map into the territory.



That's a rough pass on some of my thoughts about art and the interactive medium. As usual, I don't think I'm handing down some sort of gospel as much as opening a dialogue and presenting ideas to be refined through feedback. There aren't really any specific game examples in this installment, but I might revisit the concept with some examples from the interactive side of things. This might just end up being a rehash of the MDA framework with some visual art parallels, however.

Labels: ,

Saturday, January 17, 2009

Terrain Test 1

While I've surfaced briefly, a quick blurb on another side project I've been chipping away at when given windows of opportunity. Can't really say a lot about it yet aside from the fact that it's going to involve procedural world creation. As such, here's an early prototype screenshot, showing random heightmap generation (roughly color coded) plus crude river and lake propagation.



I'm not even sure if the end result worlds are going to be as granular as this. One project I did back in college was a mix between designed and random worlds. I made a few hundred authored 'tiles', somewhat like the screens in Zelda. Each edge followed one of 8 templates, with the middles being fair game.


The tiles were then randomly drawn and assembled, Carcassonne style.



There is the potential in this project for multiplayer and world ownership, which might make designed elements like these look contrived and repetitive, as several people might have the "lake surrounded by 3 boulders" world tile.

More to come, perhaps with a proper project title.

Labels: , ,

Identity: Introduction

Here's a first draft design doc of something that came to me on the commute home tonight. I think I'll probably prototype this over a few lunches next week and see what develops.

Premise
We all have several different faces that we wear when interacting with people. Family, friends, spouses, co-workers, etc. This idea involves mechanics that allow the player to shift identities in the presence of different people through the metaphor of color. Analogous colors will work well together while complementary colors will clash. Each session will take only a few minutes, and at the end the player can see how many friends were made and how much integrity he retained.

Interface
My first thoughts are using 2d and a dual stick controller since I'll probably be mocking this up in XNA. Left stick moves while the right stick will change color. I think that mechanic is going to need instant fine tuned access, so an analogue stick would work well for this. The stick will access a radial menu around the character, perhaps requiring a button press for confirmation. I want to involve the triggers as well to set some sort of intensity or radius for the color being exhibited. It'll take some prototyping to work out.

Colors
As mentioned above, the player can change colors to represent a different personality facet he's exposing. I might include the triggers to slide the value up and down to sort of represent the introvert/extrovert continuum or chroma/purity of the facet being displayed. Closer to grey in this case means sort of wishy washy. You can play it safe and stay near grey, and everyone will sort of tolerate you, but you'll never make any true friends.

Staying close to someone with a similar color will raise their opinion of you. A high enough opinion might result in them following you around more, making it tricky to befriend people of opposite colors. If you're dragging along a deeply green friend and try to chat up the red guy, you'll either piss off the green friend by shifting to red, or go middle of the road and sort of bore them both. I'm not certain if I want to deal with interactions between the NPCs themselves.

Letters
The entire cast of characters should fit within an alphabet of letters. This allows them to be iconic and abstract, but still memorable. The player will easily be able to remember "I really pissed A off this time, while G became my best friend." Full names aren't abstract enough and edge in on a simulation threshold I don't want to cross. Unmarked shapes, however, won't allow the player to track progress as easily or project personalities and relationships into the 'NPCs'.

Each character will be a colored circle with a letter in the center. The color will represent the personality type you have to match. There will be some indicator as to the character's attitude towards the player. It might be represented in the letter on a monochrome white to black scale.

Gifts
Some letters will bear gifts like love and wealth. If the player wins them over through repeat interaction with a similar enough color, he will gain the gift from that character. Wealth accumulates in one large pile. Love could either be tallied by the number of characters that have given the gift, or it could be tracked on a per character basis as something that can be gained and lost. There may or may not be different ways these are obtained from a character.

Timeline
The timeline will direct the pace of the game. It simulates a lifetime of interacting with people. Events on the line will pass by (probably at the top of the screen, as different shapes on a line or something) and change the mix of NPCs on the screen. Big events (birthdays, funerals?) will have a larger variety of people, while everyday occurrences like school and work will offer the player repeat opportunities with the same smaller group of characters. Funerals and the ebbing of life might be a cool thing to look into as well, having letters fade away after a time, as long as it doesn't detract from the core message of the game.

Goal/Endgame
I don't think this is going to be a win/lose sort of experience. There will be trackable metrics that accumulate at the end. The player can amass love and wealth. The player will also have a color at the end that will vary in hue, chroma and value. Each of these axes will tell part of the story of how that player approached things. Once the player has checked it out a couple of times, he can set his own goals and see if he can achieve them, maybe learning a thing or two along the way about the mechanics, and by proxy his own approach to interfacing with human beings. That's a pretty lofty goal, however.

So that's the first pass. Some of the moment to moment stuff is a bit vague, but I think there are ingredients in there for an interesting experience. Posts to follow as prototyping commences.

Labels: , ,

Friday, August 22, 2008

Conversation RPG: Part 2

[part 1]

Following part 1 of this topic, a little more detail on the mechanics of conversationm, etc. I'm thinking more about integrating this mechanic into a larger game where communication is pivotal, but also a means to an end so the player has goals driving the conversations in addition to 'sandboxy' relationship building. Ultimately I want to simulate the feel of conversation without the specific details that would have to be written in natural language by someone then heuristically analyzed to make sense in the right contexts, otherwise (and probably regardless) resulting in often awkward and immersion breaking Frankenstein sentences.

Topics
Conversations will center around "topics". Pretty self-explanatory, a topic is what the conversation is about. This can be a person, place, thing etc. and the player and other NPCs will accumulate a wide variety of these over the course of the game. The idea is to provide a large variety of these to increase communication granularity while keeping them easy to organize and manage for the player. The first thing that comes to mind is categories. This will probably be a primarily meta structure only used by the player for organizational purposes rather than having much impact on the system itself. More exploration into that later.The following are the categories I've come up with. I think most conversation topics can fall into one of these groups pretty cleanly. These are pretty simple concepts and, as such, could be represented well by some iconic language for easy menu navigation.

  • Current events
    • news at varying geographic scales
    • "the weather"
  • People
    • family and friends
    • celebrities (ok, maybe not so "clean" as this could fall under entertainment below)
  • Entertainment
    • sports
    • media (music, movies and TV, games)
  • Specialties
    • jobs
    • hobbies

"Global" and "Local" could easily be modifiers for each category as well for more generic or more specific conversations. (e.g. Global weather could be about a hurricane in the Gulf of Mexico while Local weather could be about how windy it is today)

Emotes
I haven't really put much thought into the role of emotes in this system. I realize there are probably a lot of parallels between what I'm pieceing together and Crawford's work on Storytron, but I don't know if including "hit [a lot]" or "flirt [minimal]" is necessarily how I want to handle it. That might even be a different parallel system, or out of the scope of this entirely. Not sure yet.

Anatomy of a Topic
A topic itself comes with several subcomponents pertaining to the speaker as well as the subject.
  • Topic content
    The actual meat of the topic. What it's about. This can be nouns like people and places as well as verbs like events that occurred.
    • Associated topics
      These are the topics intrinsically tied to the main topic. If the main topic is an event, the sub topic could be the people that were involved or the place where it happened.
  • Emotion
    This is the character's current emotional attitude towards the topic. This could get to be complicated, but it will provide the context for discussion of one topic between 2 people. It's the opinion that can cause arguments or form bonds of common interest.
  • Passion level
    This is how strongly the character feels about the topic. The stronger they feel, the more fiercely they'll discuss a topic and the harder they'll be to sway to a different emotional stance.
  • Knowledge level
    This is how much knowledge of the topic the character has. This can be used to inform others as well as perhaps aid in leading discussions or defending with logical arguments.
Knowledge and passion sort of counter one another. If someone passionate but woefully misinformed tries to argue a point to someone of a different opinion who's much more knowledgeable, the former could potentially be converted in his opinion. If his passion is too high, though, he might not listen to reason. Knowledge levels could also tie into other aspects of gameplay where the character has to accomplish some task that requires a certain level of information. I want to explore this dichotomy more and see other mechanical ways these two could interact.

Intent
Another facet in the presentation of a topic by a character is the intent. This is the micro-goal of the current conversation. This can probably change from moment to moment, but each exchange will have a purpose to serve as a catalyst for progression. A person with more knowledge in a topic could use "Inform" with that topic to increase another person's knowledge of it. Declarations could be simple statements of one's stance on a topic emotionally or knowledge-wise.

Some potential exchange intent ideas:
  • Persuasion
  • Inquiry
  • Declaration
  • Informing
  • Interruption (? might just be a side effect of changing topics jarringly)

The next step will be discussing the game idea I'm thinking of including this in, as well as more practical implementation ideas with interface and everything. Maybe there will be more pictures to look at as well.

Coming up
  • AI and topic usage/interpretation
  • Emotional baggage
  • Creating and obtaining topics
  • Interface
  • types of conversations (arguments & debates, etc)
  • Character memory
  • Probably more thought on emotes

Labels: , ,

Friday, August 15, 2008

Link Relay: Narrative and Interactivity

Interesting trio of articles on narrative in games that all reference one another. Mostly linking these here so I remember to read them all the way through at some point soon.

Brainy Gamer: Narrative Manifesto
Vorpal Bunny Ranch: Choose your own Lover
Artful Gamer: Narratives and Interactivity Still Misunderstood

Labels: ,

Introduction to The Ferry: Short but Deep Webs of Causality

Summary
The Ferry is a brief but deep game of narrative exploration. The idea sprang up while I was playing Indigo Prophecy and I mentioned some of its founding observations in an earlier article on replayability. The space and time are both highly constrained. The setting is a ferry ride, probably across the English Channel or some other body of water large enough to support a ferry with the features I want to include. The player will be able to take on the roles of many of the passengers of the ship, each with their own goals and aspirations, each with their own impact on the events that unfold over the course of the trip.


Mission Statement

The idea behind this experiment is the exposure of gameplay depth through replayability. The time and space are restricted for two reasons. First, the constraints make it easier to develop the assets needed for all of the varying interactions and narrative options the player can explore through gameplay. The second reason for the constraint (in time, mostly) is to allow the player to quickly retread the story, taking different routes to see his impact on the narrative. This is further extrapolated by allowing the control of different characters throughout the course of play.

Multiple Personalities

Having the player inhabit multiple avatars that can coexist in a looping timeframe poses interesting design possibilities. The path I'd like to explore in The Ferry would have the player's actions 'baked' into the characters, so they behave as he did when the player takes on the role of a different character. If the player takes control of the Ship's Steward and walks from the bridge to the galley then to the garage, when he plays the second time as the Gilted Lover, he can watch the Steward travel to those places in that order, interacting with the world in whatever ways the player did.

Non-Linear Time
To accommodate the organization of different characters and the flow of time, there will be a track editor similar to non-linear video editing and animation packages. Each character will have its own track on the timeline. The timeline will be divided into 5 minute chunks. The player can jump to any 5 minute segment in control of any character he's unlocked thus far. As soon as he interacts with a character he previously controlled and disrupts its path from the way he controlled it that timeline will become locked from that point onward, with the color of the timeline reflecting this 'invalidated' state. The AI will take over from the point of invalidation, ideally trying to approximate the intentions of the player when he was in control (tech permitting).


Narrative Trajectories
The impact each character's storyline has on the others could be viewed sort of like the interactions in a particle collider. Each track intersects, and then multiple possibilities for each party involved scatter outward from the intersection. The more parties involved, the bigger the collision. The trick here is managing the outcomes in the pre-production phase by developing systems that are granular enough and potentially procedurally adaptive to accommodate the possibilities. That or examine the interactions and cull them based off of the ones with more fallout to manage than others.

Standard branching path through a narrative possibility space. NPCs have deterministic responses to player actions. Player's actions can have future repercussions, affecting choices as well as simply altering play. The meta bubbles here are pretty arbitrary scalewise and can represent anything from encounters to 'levels' to entire games in a series.

In the trajectory collision model, the inputs to an interaction can come from several directions since the actors involved can have player motivations. The outcomes for actors, likewise are non-deterministic since it can be up to the player to choose how to respond in the various roles involved. This could get quite hairy, even in the proposed limited scope of half an hour aboard a ship. I was working on a bubble-chamber like diagram for this, but it quickly got out of hand. Maybe that's telling me something...

First Steps
Aside from general brainstorming systems and spaces, the next step I plan to take is putting together a paper prototype. This will probably be nothing more than an RPG session in a fairly generic system (GURPS, bare d20). I'll throw in some of the roles I want to see included in the scenario, let people choose the characters, give them their 'motivation' and see what happens. The info from this will inform future decisions about just what affordances I want to give to players in this environment as well as if story ingredients are interesting and have flexible potential. I probably won't even include a map, but see what kind of environments the players expect and assume the boat will have.




Coming Next
  • Verbs
    What does the player do, exactly?
  • AI Considerations
    How to NPC characters react to input and alter behavior based on prior player input based on new stimuli? How can procedural behavior systems mitigate complexity?
  • Interface
    More on the track view and how the player will be expected to navigate the space-time bubble.
  • Motivations
    The character motivation system and tools for the player to decide how the character feels about others. Based on ideas from an earlier post.

Labels: ,

Wednesday, August 13, 2008

Designer Identity

Talking with a friend recently, the topic of designer identity came up. More specifically, the topic of who I am as a designer, what do I stand for and want to make of this career. I think this is a critical question for anyone that wants to be successful in this line of work. By successful I don't just mean employed, either. It's (relatively) easy to drift along in a design role, taking whatever projects you can find and making ends meet. You can work at a port shop or shovel-ware factory, still get paid, still call yourself a designer. Don't get me wrong, I'd take any game design job over almost any 'normal' job that people do.

What I'm talking about is a focus, a raison d'être. Artists of any medium develop a voice in their work, and game design is no different.

My initial response was sort of knee-jerk. I stated I was about player choice and expression, falling more on the interactive side of the continuum where procedural narrative and simulations lie as opposed to linear narrative, cut scenes and point to point gameplay. Games are about player interaction, and the bias I chose epitomizes the very nature of our medium.

After the conversation ended I began to think about this response and how it rules out a lot of experiences I've enjoyed when playing games as well as experiences I'd enjoy crafting myself.

Looking at my project idea database, only 13 of the roughly 70 games fit the "simulation aided narrative" description, where the player can sort of sculpt the story to their liking. A large portion falls into the "player exploration" category where there's some large world(s) or system for the player to wander around in and discover. Then there's the "experimental" category, ideas that are just different from standard assumptions about games specifically and interactive systems more generally. Last are games that follow fairly conventional mechanics but have some specific theme I find interesting.

Looking at some of my favorite games, a lot of them don't really have player driven narrative or much player expression* at all. The short list: Psychonauts, Shadow of the Colossus, Braid, Portal, Mega Man, Zelda, Knytt. None of those even have as much as a branching ending. Some are exploratory, some are linear while others are less so. They are all fairly artistically cohesive and respect the player by providing well communicated design and few character stereotypes.

I'm discovering that I don't have as much focus as I think yet. I think focus comes in progressively narrower stages. In the beginning, 2nd to 4th grade all I knew was "I wanna make games! I wanna make games!" Now that I've been a designer for a few years I have the opportunity to step back and ask what kind of games I want to make, how I see this whole thing panning out over the next several years. I definitely know what I enjoy playing and things I'd like to see our medium accomplish. I want to be on the forefront of advancing our medium beyond the stereotypical teen male power fantasies and narrative drivel that stigmatize it. I want to see art asserted over profit.

Art over profit is tricky when you do this for a living. Side projects are a good way to vent creative energy in a risk averse business, but I think lessons learned there can be brought into the commercial endeavors. I also look forward to more exploratory experimental design in the mainstream, hopefully curbing the self-fulfilling cycle of games for male teens drawing the male teen demographic so we then focus on male teens ad nauseum.

* Player expression being the player's pseudo emergent use of granular systems to solve problems with their own 'voice' instead of enacting explicit solutions to problems and paths through environments. You could argue that anything interactive supports expression since a player can choose to jump over Goombas instead of jumping on them in Mario, for example.

Labels: ,

The Grand Scheme

So here are some ideas I've been percolating for the blog. Just a heads up to what people can expect here over the next few weeks or months depending on my posting diligence. Also happy to have feedback on spinoff ideas or preferences people have for one topic over another.

Paper Prototype: Kart Racer
One of the ideas my team worked on at the Game Design Workshop a couple of years ago. Exploring it and expanding it, since I kind of liked the game we were building. Like the Pac Man articles, this will eventually include playtest data and sort of a behind the scenes of the evolution of the game, assuming it doesn't fall apart.

Paper Prototype: Communication
Game about the spread of information. It began as the player being a piece of information traveling from node to node.It's currently about the player setting up a network of nodes to propagate information. Updates will probably be made based off of my current reading of The Tipping Point as well.

Replay - The Ferry design, part 1
Exploration of one of my idea database games. Players can explore different roles and extensive replayability in an environment constrained in both space and time.

Emergence and the Simulation Uncanny Valley
Examining the tie between affordances, simulation depth and the uncanny valley. The more options you allow, the more that the small things you didn't include will stand out.

Episodes and Character Attachment
Does an episodic structure lead to closer player attachment to characters? Not sure if this topic has legs or not, but it interests me.

Design of Everyday Games
A series applying Donald Norman's design principles directly to game design.

Murder Simulator
Another game from the idea vault. Detective sim with procedurally generated crimes.

Dwarf Fortress Interface Design
Usability centered examination and interface overhaul on Dwarf Fortress, a gem buried beneath a scary pile of menus and ASCII characters.

Cog updates
Work in progress updates for a side project. Cog is an exploratory platformer along the lines of Metroid or Knytt but the world exists on varying scales that the player can access by inhabiting different sized avatars.

Dungeon Masters as Game Designers
Looking at the inherent skills and lessons learned while Game Mastering pen and paper RPGs and how these can be quite valuable as a game designer.

Labels: ,

Monday, August 04, 2008

Cog: Introduction

So I thought, "Hey, wouldn't it be cool to do a recursive, sort of fractal exploratory platformer with nested avatars."

video

The game takes a sort of "Metroidvania" approach to world design: open, seamless, large. The added bonus with this design is that everything exists on various scales, 5 or so by the most recent design. Each "tile" of world can be broken down into a smaller tilemap, with tiles that can be broken down, etc. This won't be procedural or infinite, but instead part of a designed and (hopefully) well thought-out world.

The player gains access to these scales by inhabiting larger avatars. These super-avatars initially appear to the player as sections of the world that can be explored. When the player reaches a central "control node", he can take control of the larger character. The camera zooms out and the smaller capillary tunnels and platforms fade away LOD-style to reveal a bigger picture.

The video above was hammered together in TorqueX, which admirably handled tilemaps hundreds of thousands of game units across. There's no way I'd do a real game like that though. There will ultimately need to be some hierarchy based LOD mojo going on to keep collision and art from showing up at scales irrelevant to the player's current frame of reference.

At first I was pondering how to wrap a context around this inhabitation/scale shifting mechanic. The main character started as an alien ball of light and it magically took control of things. Upon a little further iteration I decided upon the concept of gears within gears and sketched up a corresponding, slightly more endearing character.

Everything's in a prototype/pre-production phase right now, and this could take a rightful seat alongside many other projects waiting in my design folder. Hopefully more to come soon.

Labels: , , ,

Saturday, August 02, 2008

The Design of Everyday Games: Introduction

One of the books that sits at the core of influence for me is Donald Norman's The Design of Everyday Things. It has nothing yet everything to do with game design. The book focuses primarily on things like teapots, doorknobs and telephone systems but the design principles apply to the world of interface and experience design in general.

I'm thinking about starting a series that explores the lessons learned in this book and applies them explicitly to game design, complete with examples both from the real world that the book addresses and from games that exhibit both dos and don'ts with respect to the principles and lessons taught in the book.

Some ideas that immediately spring to mind for topics are:
  • Affordances and Constraints
  • The 7 Stages of Action
  • Conceptual Models
  • Mapping
  • Feedback
  • Knowledge in the Head and in the World
More to come, hopefully soon. Someone tell me if this has already been done somewhere, like a GDC talk or something.

Labels: ,

Friday, August 01, 2008

Buried Gem - Cryostasis

I came across this article in Next Gen a little over a month ago previewing Cryostasis, a unfortunately named horror shooter of sorts set in the arctic. I actually had to dig through my Twitter archive to remember what the thing was called. The cool trick is that the player can relieve the last moments of corpses he comes across. It sounds like a much more intense version of the data-logs from games like System Shock 2. In addition to reliving these moments, however, the player can change the past's future through his interactions with the world. My only hope is that this feature makes it into the final game (I'm looking at you STALKER) and it fulfills all my wildest hopes and dreams for gameplay possibilities.

Think about the narrative impact of stepping into the shoes of someone you know is going to die. This person isn't the protagonist, so it's actually not frustrating that you're put in this predicament. Depending on how much info the game gives, you might even know how this person died, giving the player a layer of in-joke foreshadowing meta-info that could color everything they do with those final moments( e.g. "Electric shock, guess I'll try and stay away from light sockets").

If the designers were so inclined they could really inject some heavy philosophy into this mechanic, either taking a nihilist view that your fate is sealed from the outset, or encouraging players to think about how they can impact larger systems even with little time or resources.

One thing that could be cool, but could lead to that live/die success/fail model is if the player could save the lives of the people and resurrect them in the present, giving himself another ally against the [cold, monsters, AI construct ??]. This could result in the endless repetition of trying to get a timed even correct and people saving and loading until they 'won' every subsection of the game, however.

So yeah, Cryostasis, lets keep an eye on it and see if it makes it to store shelves. If not, we could totally rip off that super cool mechanic for one of our own games.

article: http://www.edge-online.com/magazine/preview-cryostasis

http://cryostasis-game.com/

Labels: , ,

Wednesday, June 04, 2008

Mental Modeling: Character Attitudes and Quest Intent

One thing that frustrates me when playing games is the inability to have the character feel the same way as I do about other characters or situations in the game. Some games use conversation trees to express yourself and how you want your character to respond to situations. The usual internal model of the character that results from this usually a slider at best, representing some flavor of good/evil continuum.

One of the first things too look at is character interactions. Games usually don't store the player character's attitudes toward characters, though some games store characters' attitudes towards the player. The result of this is you get the full spectrum of conversation options when speaking to someone, allowing you to be incredibly fickle with your approach to them, praising them in one breath while cursing them in the next.

What I'd like to see is some sort of character list you can access and assign what you think (or what you think the player character thinks) about important characters. This could even extend to side characters if you prioritized them and made the interface easily navigable. I'd envision this as being a grid of portraits. When you highlight one you either get a like/dislike slider or something more involved, like a radial wheel of adjectives to select from. For instance, a overly friendly character could have options like: Bob is "a kiss-ass", "cheerful", "deluded", etc. Whenever the player has interactions with this guy, that opinion will inform the conversation choices. This sort of system could even obviate a tree system altogether, letting the player "front-load" all the conversation choices by choosing what the protagonist thinks. This potentially removes interaction though and could relegate the player to watching instead of participating.

One potential pitfall lies in the frequency in which players can alter their opinions, flip flopping between loving and hating someone. This could be reduced by giving the player "points" any time he interacts with, or hears news about the character in question. These can then be spend to slide the slider or move the adjective pointer a certain distance. A more obtrusive way could be popping up a question every time the character in question does or says something significant that asks what the player thinks about what just happened. "Bob stabbed your brother. What do you think? [he had it coming] [holy crap!] [that such Bob is such a kidder]"

All of these settings would start in some sort of neutral position, so a player that didn't want to deal with it could let it sit in the background and focus on the action elements of the game (unless the game was centered around relationships, in which case this would be a core mechanic instead of a cumbersome aside). I think this system may have the unfortunate burden of a pretty involved UI, but I can't think of a more subtle way to allow the player to accurately model the main character's outlook on the world. Clever UI design could mitigate the unpleasantness of the system, and a low frequency of opinion 'tuning' might make it less disruptive to immersion.

Another facet of modeling the thought processes of the character is to address intent with regards to in-game goals. One thing the above system could allow is a deceptive relationship with a character. You could absolutely despise someone, but become buddies with them to learn how to bring them down. In this case, you could accept quests from them with the sole intent of undermining them. Most games currently have succeed/fail scenarios for these sort of situations. Suppose you did take a quest from a character you didn't particularly like with the intention of botching it or somehow bending the situation to benefit you instead. The player would have to know that these are valid options in a quest through some non-systemic means. There would have to be some inner monologue saying "or I could just do things my way" or some sort of popup for the player to know that completing this quest in the non-standard way is a legitimate course of action that has its own reward path.

In my proposed system you'd have a journal to track quests like most other games, but there would be different success options (probably opened up depending on your attitude towards characters involved). So "retrieve the gem for Lord Evilface" would have the options: "Complete as is" and others like "Steal the gem for myself" or "Find a fake gem to give Evilface instead of risking my neck". This might seem heavy handed, but hopefully the options presented will seem like natural extensions of the character's wishes based off of the input from the character attitude matrix described above.

Again, I'm not certain if these are steps forwards or backwards in relationship to the more streamlined console era that's taking place. I think I'll mull over interface for a while and come up with a followup article to this exploring some ideas of ways to take this system and not make it a bloated spreadsheet management chore for the player.

Labels:

Friday, May 30, 2008

The Game Mechanics Distribution Schedule

Believe it or not, this is a design article. It’s not about the fun theory stuff like DDA or emergent narrative, but focuses instead on some of the nitty gritty implementation stuff, namely the distribution of gameplay mechanics in your game. In the latest project I’ve been working on, I came up with a useful method for tracking what abilities the player will be using and when, to insure that you don’t have bunched up areas that require something like “block pushing” followed by a dearth of any interesting gameplay aside from “double jump”.

This method probably works best as an analytical tool after you’ve made a paper-map pass on your levels, but it could easily be tweaked to adapt during preproduction. The basic gist is that you lay out a spreadsheet where columns represent gameplay “moments” and rows represent the mechanics available to the player. You fill in what is being used where and zoom all the way out, so you can see the entire breadth of the game. At this point you look for dense and sparse areas that show where something is being used to frequently or not often enough. This is a good tool to keep separate level designers under a consistent framework for the frequency and escalation of mechanics they’re introducing and requiring the player to use.


Step 1: The Mechanics

The first step is to call out all of the player tools. It helps to already know what they will be, but there’s room for growth if the list isn’t 100% complete. It’s most useful to categorize these into types of abilities. “Jump” and “wall-run” would go under “navigation based” for instance.

A handy extrapolation from this step is to identify tiers of usage for each ability so you can ensure they’re being escalated and grow in meaningful ways as the game progresses. “Jump, tier 1” would involve small heights with little repercussion if you miss while “Jump, tier 5” might require precision aim or timing and have certain doom as the consequence for failure. It’s probably a good idea to normalize these tiers across the board so they all have the same range. It's good to place a doc like this on a wiki somewhere so all the designers can get a good, concrete idea of what constitutes what tier of any given mechanic.

Step 2: The Schedule

The next step is to break your game down into levels, and the levels down into bite-sized encounters. For this tool to work best, all of the encounters should be approximately the same length. If they aren’t, you could scale the column width in excel to represent the duration of the slice. The style of game you're making will impact how these slices are determined, so feel free to make up your own unit of measurement.

Step 3: Make the spreadsheet

Now we combine the previous 2 steps. You'll make a spreadsheet with rows representing the abilities and columns representing the levels and moments. My first inclination was to give each level its own tab, but this ended up isolating them so you couldn't look at the big picture all at once. The new shareable excel format should ideally allow multiple designers to work on their own sections individually without needing to split it into separate docs.

The ability groups should be clustered together, preferably in the order in which they're revealed, and I'll explain why next. You can give headers to these and merge cells for level and ability groups for further clarification. The main idea in formatting is to enable you to get as much information at a glance as possible.

Step 4: Mark mechanic availability

The next step is to gray out all of the boxes where abilities are not unlocked or available yet. If you've listed the abilities in the order they're unlocked, this should resemble stair steps. This process by itself will be helpful in showing you how much of the game relies on which subset of the player's abilities. You can tell if, for instance, the player will have nothing but "jump" for 90% of the game, at which point he gets all of the other abilities at once. This is a bit of an exaggeration, but you get the idea.

Step 5: Fill in the boxes

At this point you go through all of the moments, level by level, and fill in the cells where a mechanic occurs. Leave the cells where a mechanic isn't used white. If you're using tiers, you can heat map the values so blues are low-tier and reds are high-tier. This will take some time, but you get that OCD bubble-wrap kind of Zen out of the process.

Step 6: Step Back and Analyze

Now that you have your chart filled in, zoom it out so you can see the whole thing at once. The text will probably be illegible, but you'll be able to see trends from this birds-eye view.

Long lines of a color mean that something is probably being overused in an area. You'll probably want a little of this when a mechanic is first introduced, but give it some breathing room after that.

Large white spaces mean a mechanic is underused in an area. If you've clustered abilities by grouping (navigation, equipment based, cerebral, combat) then you can tell if an area leans too much towards one style of gameplay. This is an unbiased analytical tool, though, and you might want a more combat-heavy area.

Another thing to look at is heat-mapping progression. If reds are occurring a lot before blues, or there are a lot of blues at the end of the game, then there's probably an escalation issue to address where things are too hard up front and too easy on the backend.

Step 7: Tweak and repeat

After you've gathered your data, make some notes about where the problems spots are and how to fix them with the inclusion or removal of mechanic usage instances. Implement these ideas, fill out the chart, see how things are working and go from there. It's an iterative process that could take several passes along with whatever other methods of blind-testing or other feedback tools you're using.

Conclusions
The first thing to note is this isn't a magic bullet to make a fun game. It's a way for a designer to get a good idea of the landscape of the mechanics in his game and adjust levels accordingly. There isn't a sequence of colors or patterns to look for, as it's all in the aesthetic that the designer is hoping to accomplish with the title.

Another thing to take into account is that this is initially set up for linear levels with a set schedule for the revelation of abilities. I think the idea could extend to incorporate less linear experiences with open world settings or possibility space bubbles or whatnot, and I might tackle that extension in the near future.

In no way do I recommend this over actually playing the game and seeing what it feels like in person. This is a good method of troubleshooting things in the paper map phase and keeping tabs on gameplay distribution during development, but it won't replace actual playtesting and user feedback.

I hope some of you get some use out of this, as it helped me out a great deal in getting a grasp on the big picture of what was happening in my game.

Labels: ,

Thursday, May 29, 2008

In-Game Data Collection

So I've been trying to think of a term to encapsulate a certain type of gameplay mechanicsm I've encountered and enjoyed a few times in the past. The gist is that the player ends up using his own powers of observation and deduction in coordination with avatar abilities to discover things and solve problems. This sounds like standard adventure puzzle gameplay at first, but I think it's a little deeper than that.

  • Example 1: Morrowind. One quest involves you finding out where a guy stashes some treasure. You have to watch him from a distance and note where he checks up on his hidden cache. There are no waypoints, no UI goading to keep you on track. He does the action every night and it's up to the player to watch him.
  • Example 2: Assassin's Creed. Tracking down the fat guy. One of the eavesdropping missions revealed that the statue in the courtyard was climbable. When the wander-around-able cinema started for the assassination, I was able to note where the statue in question was and completely plan out my assault by the end of the cinematic, springing to action as soon as it stopped.
  • Example 3: Wind Waker. The player is tasked with catching a moment of veiled romance with his camera. You eventually find 2 people whose patrol paths cross and they cast a loving glance at one another.
These are all about unguided discovery and feeling really clever once you achieve these goals. They also don't involve any tangible game mechanics. There's no jumping or shooting required to figure out these clues, though the puzzles are ensconced within the context of gameplay that does involve these explicit mechanics.

No real direction here, just that I think this sort of immersive in game thinking is a great thing to shoot for. I'm also trying to figure out a term for this sort of phenomenon so I can categorize it for later reference and use.

Labels:

Friday, May 09, 2008

Dark Sector

Finally got Gamefly to send me Dark Sector last week. For the 2 hours I've invested thus far, I'm not that impressed. The glaive/boomerang mechanic has some potential, but right now its raw usefulness is overshadowed by guns. It a lot of fun to throw and steer the glaive from a first person view, and it can de-torso guys, so it does tend to win out.

The main sticking point I have is the level design. Why is it always the level design? The LDs are eschewing goal driven encounters with lock-downs where you either muddle your way through to the exit or kill guys until a random door opens. For the player to make meaningful decisions, they have to know what they're supposed to be doing in a given situation. Even if those goals are localized and player generated, at least there are goals. In these cases, it's a get from A to wherever linear formula, but you don't know how to get to wherever so you can't form a plan aside from killing things until something happens.

One area in particular dropped me into a dark shaft with 2 inches of water on the floor. Zombie guys kept spawning from this minuscule veneer of liquid as if climbing from the depths of some fathomless bog while I looked for a way to open the door. Some doors occasionally open when you get close and they flash a "hit B to open", some don't.

I had previously learned the "transfer electricity" ability prior to this, and there was a sparking wire I saw somewhere above on my way in, so I thought that might be the gating device.

Turns out that you just had to kill X of the zombies that spawned in endless waves. I got some kind of achievement and the door ratcheted open, its kill counter satisfied.

I realize that this sort of thing is hard to avoid throwing in on occasion, but at least let me know somehow that what I'm supposed to be engaging in is zombie genocide and not looking for some alternate mechanism of escape. At least God of War had those red walls to tell you that you were in arena mode.

Systemic design, goal oriented encounters, useful tools.

In addition to that, the only encounters I've seen so far could have just as easily been incorporated in a game that only involved a gun or two. Nothing aside from a few remote switches have been boomerang dependent systems.

It kind of reminds me of Jon Blow's talk on the ethics of game design and how we're padding these games out with meaningless repetitive encounters to lengthen the experience instead of coming up with mechanics that are inherently enjoyable to use and lend themselves to creating many varied scenarios where the systems can be creatively and emergently combined to give the player the agency and bit of mental exercise he or she deserves. Was that all one sentence?

Labels: , ,

Friday, January 11, 2008

Time Traveling Board Game, pt. 1

During my commute home today an idea came to me. It's probably nothing unique in the sea of game concepts out there, but I thought I'd explore it nonetheless. I basically want to be able to express the concept of time travel in a board game. I also want this to be simple and (hopefully) elegant enough that people can play it without the aid of a computer to manage timestreams and paradox. This is a thought process in motion, so there are bound to be some contradictions and changes of mind as things progress.

The idea is to take a simple 2d board game that's played on a grid, and extrapolate the 2d plane into a 3rd dimension of time slices. Each slice would be a duplicate board representing different states of the board as time progresses.

My first inclination was to apply this to chess. I thought of making 3d chess where the 3rd D was time instead of vertically stacked boards. I thought this might be a semantic issue, and that the vertical slices could represent time, but then a few things stuck out in my head.

First, every piece would have to be present in every slice, barring its death in an earlier timeslice. Secondly I wanted to account for branching in timelines, so a simple stack of boards wouldn't be enough. I eventually decided against using chess as a starting point, since it's already a complex game and the flatspace game mechanics should probably be as simple as possible before extracting things into the 4th (3rd?) dimension.

The Base Game
The base game I'm starting with is a super simple move/capture game. The board will be 4 x4 and each player will have 4 pieces. Each piece will do the exact same thing. The move set will include moving either 1 or 2 spaces or capturing an adjacent enemy piece. That's it for now.

Each piece in the set will also look different from the others so you can keep track of who is who when they travel through time, due to some restrictions I'll cover in a minute. There will be one black set of pieces and one white set. The pieces will be a triangle, square, circle and hexagon. One side will have a red X. This will be used to show which time slices a piece has been captured on.

Time Traveling Complications
The next step is to apply time travel rules on top of the basic rules. These simple moves can then be extended through time so a piece can move 1 or 2 (maybe just 1) spaces forward or backwards in time, or capture a piece in the same spot in an adjacent timeslice. I chose the simple route because I tried to imagine how to extrapolate the concept of 'diagonal' or 'L-shaped' moves from chess into a time travelling mechanic.

Forking
The game will feature 'forking', or splits in the timeline. A player can go back to any timeslice and choose to make a different move than one he executed, as long as the timeslice was one in which it was his turn. This will create a parallel board to the following timeslice where the alternate move was made.

There will have to be some markers of some sort that denote whose turn a timeslice represents and which directions the forks come from. There will also probably need to be some cap on the maximum number of parallel timelines to keep the game from getting out of hand, both conceptually and from a materials standpoint. There might also need to be a way for players to remove boards from play. Perhaps a player can, as his turn, remove the endmost board from a timeline where it was his turn, basically 'undoing' a move.

Another concept I had might render this pruning mechanic unnecessary, though. As time progresses, older slices of time will fall off the tree. My first thought is 4 timeslices for each player, so a timeline with a maximum of 8 boards in length. As soon as a player makes a move at the far end of the timeline, the earliest slice will be removed and all the boards will be slid backwards.

Time Travel
The game will also feature pieces that can travel through time. This part is a little trickier than forking, due to cause and effect relationships. If piece A travels back in time one step, then there will be 2 copies of A in that timeslice. This would make the next timeslice have 2 copies of A as well, since they would persist through time. The player could probably repeat this process ad infinitum until he had a whole board full of copies of one piece. This means that special restrictions probably have to be applied.

Moving Forward
My next step is to begin testing some of these first, basic ideas and see what happens. The time travel part in particular will probably have to undergo a rapidfire series of iterative playtests to see what's even in the realm of feasibility, then what subset of that is actually fun. More posts as progress is made.

Labels: , , ,

Thursday, December 13, 2007

Inexorable Loss vs Cut Scene Death

Like many others, I recently finished playing Passage, a great lifetime-in-5-minutes game by Jason Rohrer. If you haven't played it yet, follow the links and do so. It's 5 minutes and you'll probably learn a lot more from playing it than reading this blog. Feel free to read the artist statement from the download page too.

Playing this game brought me back to the discussion of whether or not games can make you cry. Back to the Aeris cut scene and talk of Floyd the robot. Many people believe that the Aeirs scene in FF VII was cheap, because they used a cut-scene to deliver the killing blow to the beloved character. They believe that all the emotional impact was built up through traditional non-interactive media, and that the tragic event happened outside the game world.

The problem with interactive tragedy then rears its head. We can't have a loss that the player can actively prevent, because he will inevitably restart the game from his last save and play until he keeps said event from occurring. On the other hand, taking control from the player is cheap, and feels like cheating.

Passage introduces the concept of inexorable demise. If you decide to take the love of your life on the journey with you, she will grow old alongside you and eventually die. You too will die, but many seconds after she does. The first time this happens, it's a shock. One minute she's there with you, the next she's gone, just a cold stone in the ground to mark her passing. I was taken aback by this and definitely felt sad. The second play-through is different though. Instead of shock at the end, you play the whole game with this pall of dread looming over you. You know you're going to die. You also know that she will die. It then becomes about the time you spend together and what you plan to do with it (Or you can spare her by choosing solitude, her existence frozen in your memory as a youthful ghost on the horizon).

I think there are a lot of possibilities here for gameplay in a more complicated setting. Not saying that Passage needs stuff tacked on to be good by any means. It's an excellent and elegant game distilling the essence of mortality and inviting the player to fill in a lot of the narrative and emotional details. I think this inevitability of loss could be incorporated in a larger game to give it emotional impact while taking away the desire for the player to reload the last save to avoid the tragedy.

A good argument against this idea is that it takes away control from the player as much as a cut scene, and could lead to apathy in the face of an insurmountable obstacle. So perhaps I've come full circle.

Labels: , , ,

Friday, December 07, 2007

Reflection: Why the Indigo Prophecy Demo Was Better Than the Full Game

Being the Christmas season, I thought it'd be a good time to go off on a tangent about seeing the consequences of our actions unfold, It's a Wonderful Life style. What if I'd never met my wife? What if I caught that taxi and didn't bump into that vengeful mime (who stalks me to this day) while walking to work? What if I had sausage instead of bacon?

Games are all about choices. It's the interactive hitch that separates them from other media. The aesthetic of the choice and the mechanics that enable choices are being scrutinized more and more as the question of games as art becomes more of a hot topic.

I think choices are great. I'm all for stories that adapt to the player's whims and decisions and gives a sense of high and low level agency at every possible step. However, in longer form games it becomes increasingly difficult to tell if you really made a choice at all or if it was more of a Magician's Choice, with the developer leading the player along with the illusion of free will when all roads inexorably lead to the same place.

Enter Indigo Prophecy. Spoilers will probably be abound here, but the statute of limitations has probably expired for this title by now. I played the demo before the full game was on the shelves and I was mightily impressed. The demo itself encompassed only about 20 or so linear minutes of gameplay, but it went a lot deeper than one surface run-through.

For starters, you control 2 different parties. One group investigates a crime that the other committed. The cool thing about this device is that choices you made as the murderer are all echoed in the gameplay of the investigators. For instance, once you murder the poor guy in the bathroom (under hypnosis, so you're still a perfectly nice fellow) you can either run away or sit back down at the table you were at initially. There are many other more granular options to play out, but these are 2 high level choices you can make. If you sit back down and play it cool, maybe pay your tab before leaving, the investigators can find a blood stain on the seat when you play through from their perspective. This blood sample can be taken to a lab and used as a clue for catching the other character later in the story.

There are several other details like this, several of which are recounted in the line of questioning the investigators perform on the patrons of the restaurant. In addition to this, referring back to the bit about granularity of choices, you can take various routes out of the restaurant as the killer. Some lead to freedom while others will get you incarcerated. The great thing about the 20 minute demo was that I could go back and play this scenario over and over again and see what the different outcomes were. I believe there is still some degree of this in the latter areas of the game, but I never went back through them to see what different branches there were. It's worth noting that Indigo Prophecy does do a great job of supporting this level of exploration, if you're up to it, by allowing you to split off save games and breaking the whole story down into replayable chapters of 20-30 minutes. The problem is that A>The story as a whole didn't diverge much near the end and B>Even if it did, I'd never know unless I played through the whole thing again and made a mental note of everywhere I narratively took a left instead of a right.

This is the concept of Reflection. The ability of the player to know that what he's done is currently affecting the game world and perhaps what he could have done differently. It goes hand in hand with the concept of agency and the player witnessing as the game world acknowledges his existence. The trick is somehow telling the player when a choice has had repercussions without breaking the 4th wall or hitting him over the head with it. The Witcher handles this in the obvious (yet still interesting) method of showing a montage of the chain of events from when you made a decision up until the point that you're coming face to face with its consequences. This is somewhat heavy handed, but it gets the job done and it's one of the first games to bring these systems so explicitly to the attention of the player. The drawback to this system is it still doesn't enable you to go back and play through again to see what the differences are.

One 4th wall violating method could be to incorporate a non-linear save system. It would consist of a tree of saves. Every time you save the game, the new entry would appear below its ancestor, the last save before it, in a tree of sorts. The player could then freely travel up and down the tree and see where decisions were made and things that branched off from those choices. Perhaps some kind of data sharing feature could also be incorporated so the player could bring things from one save over to its sibling and take up play from there. This all could also be couched in a fiction that allowed for non-linear perception in the main character, bringing the system back within the 4th wall.

That's probably enough on this topic for now, as it looks like things are getting a bit rambly. I'll probably dredge this up again when I explore the concept of the short but deep game where choices like these are explored fully by the player.

Labels: , , ,

Wednesday, December 05, 2007

Pac Man on paper, pt 1.

When I went to the GDC earlier this year, I got to attend the 2 day game design seminar during the tutorial sessions. One of the cool exercises we did was to replicate an existing digital game with a paper game of some sort, be it card, board, whatever. The idea was not to simulate said game, but to analyze the aesthetic of the game and strive to capture it through the mechanics of the paper game. Another takeaway was the concept of prototyping rapidly, iterating as fast as possible and playing with the game as soon as you had anything that could be considered functional. The idea was that you'd find out what was fun or not earlier and 'follow the fun', culling out useless rules and paring your design down to a lean machine.

The team I was on worked on a Mario Kart 'port'. I thought it was pretty successful and will probably post the details of it here at some point. After I got home, I started working on Pac Man. The first thing that sprang to mind was the flow of the game. The whole premise is this tenuous balance of managing your distance from the ghosts while eating as many pellets as possible. The more pellets you eat, the emptier the board. The ghosts on the other hand are trying to corner Pac-Man, but are also each trying to be the one to score the kill.

The design I came up with is a 4 player board game with 4 tracks, each radiating from a center point. Pac-Man is at the center since the whole world is relative to his position anyway. The bottom track represents the pellets in the maze. The other 3 are for the ghosts. I could have made 4 ghosts and may still, depending on balance issues. This is a preliminary design, and hasn't been tested enough to make anything final yet.

The Board
Each ghost starts at the end of his (or her) respective track, and the bottom track is filled with pellet cards randomly drawn from a stack. The stack will exclude blank pellet cards at first. Pac-Man's goal is to eat all the dots in the stack without losing all his lives (starting with 3). The ghosts' goal is to take all of Pac-Man's lives, with the most kills determining the victor.

In the 4 player mode, each player has a choice of action cards to secretly choose from and play face down. All cards are revealed simultaneously and the results ensue.

Pac-Man's options
  • Evade
    All ghosts in play are moved back 1 square. The next dot track card is discarded
  • Dots
    Take the next card in the dot track, place an empty dot card in the discard pile. There are a few different dot track cards with different effects.
  • Advance
    Move 1 ghost 2 spaces closer
Ghost Options
  • Advance
    Move 2 squares towards Pac-Man. Only one ghost can do this per turn, determined by rock-paper-scissors
  • Flee
    Move 1 square away from Pac-Man
  • Team
    Move 1 square towards Pac-Man along with other players that played Team. If no others played Team, don't move
Dot Track Cards
  • 1 dot
    1 pellet. One of the many Pac-Man must eat to finish
  • 2 dots
    2 pellets.
  • 3 dots
    3 pellets.
  • Power Pellet
    Changes the rules temporarily. If Pac-Man hits a ghost, the ghost is moved to the farthest point on its track. The power pellet lasts X turns, tentatively 5. Some added bonus might be added if Pac-Man eats a ghost as well.
  • Cherry
    Pac-Man keeps the cherry cards, and can turn one in along with 10 dots to get an extra life.
  • Tunnel
    If Pac-Man takes this one, all ghosts move back to the space of the farthest ghost from Pac-Man.
The Cards
At the end of a turn, when all movement is resolved, the dots in the bottom track are moved up with a new one being placed at the end. If the draw pile is empty, the discard is shuffled. The idea is that the pellets will be thin near the end, allowing for more evasion and fewer opportunities for Pac-Man to get those last remaining pellets. Not sure right now if this will be an appropriate feedback loop. Another idea was incorporating walls into the dot cards. There would be 1-3 walls, and these would shield Pac-Man from those directions in the turn that dot card was on 'top' of the dot track. This would have to be played with to see if it would keep things balanced or not.

Fewer players would mean a slightly different ruleset. With 2 players, the ghost cards would be randomly drawn, and the ghost player would get to assign them. Solo play could be accomplished with the cards being randomly drawn and assigned.

I have a couple of alternate ideas for rules to try out. One is the victory condition. It could be like Pac-Man Vs in that players trade out PacMan each time he's eaten and play for the highest number of dots. Another is that some of the cards (like Flee) are state based, and do different things based on whether or not a power pellet has been eaten.

I will make subsequent posts on this as I test it with more people and modify the rules accordingly.

Cards
Board

Labels: ,

Saturday, September 22, 2007

Conversation RPG, part 1

The idea for this game came to me some time ago when I was in a Japanese restaurant with some friends from college. There were quite a few of us, so 2 tables were pushed together. While everyone was sitting there waiting for food I began to notice the propagation of the conversations at the table. A dialogue might start on one end between 2 people. Someone else might chime in, expanding the conversation to 3 people. The topic would move down the table, the original people involved splintering off into another conversation with other people while the first conversation had evolved into a different subject altogether.

I wanted to do a game that modeled this phenomenon. My first inclination was to do an RPG where "combat" would be conversations. The actual interface might be more similar to a card game however, with certain topics sitting in your "hand", or short term memory. Your "deck" would be long-term memory, and topics could be drawn from it into your hand.

Throughout the game, the character would observe things in the world that would add topics to talk about. In the beginning, you would only be armed with "the weather", the lowest common denominator topic of small talk everywhere. You might also start with other topics based off of character background, determined during setup.

Topics would have levels, depending on the characters 'passion' and 'expertise' on a subject. Take "weather", for instance. A meteorologist might have high expertise and moderate passion on it, while a tornado-hunting buff might have high passion, but little expertise. Tornadoes might be a specialization, which is another idea to explore regarding topics.

The object in any conversation would be to keep it going as long as possible. This would entail matching topics with other characters, with topic levels factoring into how long a conversation could be sustained off of one topic. The longer a conversation with a person lasts, the closer the 2 characters will become, probably forming some sort of character relationship matrix.

Not having an applicable topic in a conversation will result in awkward pauses, which can result in the conversation ending. Certain conversations might have a forced duration, like a dinner party or elevator ride, while others might have an indefinite length, like a casual meeting on the street.

I'm still fuzzy on overarching goals for the player, aside from achieving social dominance.

Labels: ,