The Anatomy of a Game Jam

This feature is republished from my posting on The Grand CraftStudio Game Jam on 2/26/2013

Hello Crafters!

Since I know there are at least a few of you who have never participated or even know what a game jam is, I wanted to go a little more in depth than the FAQ on the subject. In this article I will cover the phases generally taken by game jam participants. Since I’ve only witnessed and/or¬†participated¬†in a few game jams myself, my view may be skewed. If you are a game jam veteran, feel free to correct or improve in the comments below.

You should start your game jam entry with a healthy dose of brainstorming. It is really important to start figuring out what you are going to do as soon as possible. As important as it is, in a game jam, you also want to get it over with as soon as possible. I would say use the first hour for brainstorming. Also, keep in mind you have a limited amount of time, so unless you are grade A developer you should probably steer away from ideas that involve: RPGs and Story (unless it’s an implied narrative), Multiplayer (with CraftStudio you can do local multiplayer ideas, but keep in mind not everyone rating this game is going to have another person) and Complex AI (Keep it simple!) It might be good to peruse the entries for other game jams in preparation; more on that in my next article. After the brainstorming is done, everyone in the team gets assigned (or assigns themselves) roles they are most suited for. Let’s get to work!

Which takes us to the prototyping phase. This is where you get a bare bones version of your gameplay up and functioning. This gives you the ability to try out the gameplay idea “find the fun.” This also gives you the ability to course correct without breaking and rebuilding too much. Artists can be happily creating rough versions of the vision they had during the brainstorming phase. But to tell the truth, I haven’t seen this phase in every case. So, this phase may be skipped depending on many factors: the difficulty of the gameplay idea (or lack thereof), the experience of your team, or the general feeling of the group. Personally, I really like this phase. So much so, most of my games stay in this phase… Oh wait, that’s a bad thing. ūüė¶ Moving on!

Now comes the part where you put it all together; the building phase. Artists have done their broad strokes, programmers have the basics down, sound is… non-existent or minimal. This is where it all comes together. More than likely this is the phase where you are building menus and linking disparate systems. By the end of this phase you should be able to run your game through from start to finish.

Now to find the ugly edges. The testing phase is a fairly important part in any project. It is¬†arguably¬†less important in a game jam context, since limits on time make people more forgiving about bugs. However, you should attempt to have this phase especially if you skipped the prototyping phase. You want all hands on deck testing the game and reporting bugs to some central repository. I’d advise categories for bugs so the people assigned to those areas can quickly see what they need to do because at this point, time is ticking and you are coming to the end of the deadline.

Now to polish up those ugly edges in the refining stage. This is where programmers are fixing and retesting bugs and artists are making their art a little prettier and fixing up any other problems uncovered. If you haven’t already, ¬†you should probably put sounds and music in here. This is it. When the deadline comes the end result will be this version that you submit.

And it is also the end of this article.  So to sum that all up: brainstorming, prototyping, building, testing, refining. I hope this little bit coverage on the process is useful to everyone.

Advertisements

The Importance of Failure in Games

I was collaborating with a friend on developing a skill system the other day. We came to a question of, “What happens when you fail at using a skill? Should you gain proficiency in that skill?” Learning from failure is something I’ve used a lot in my education and career. So I gravitated toward the idea that failure is as, if not more, important than success. Shortly after, my friends over at GameBuoy¬†discussed challenge in games and how it’s changed over the years. They briefly touched on how important failing is, but I felt like I wanted to examine it more closely.

I’d like to define some terms real quick. I’m going to talk about three different types of systems in games: deterministic, non-deterministic and semi-deterministic. This is how I define these concepts.

  • A deterministic¬†system is one where given the same input (i.e. the player’s effect on the system, be this the game world, a crafting system or a power gaining system) it will always produce the same output; there is no random element. A will always equal B and C will always equal D.
  • A non-deterministic system is one where randomness is used to determine all output. A will be modified by ‘n’ to equal D or B.
  • Semi-deterministic, for my purposes, is one elements have some randomness but not all outputs are based on that. I believe most games to be Semi-deterministic because the world starts from a single state and has a limited number of valid outputs. A will always equal B but C may be modified by ‘n’ to equal B or D.

I hope you are all with me. If not, still read on it might become clearer with examples.

Super Mario Brothers for NES

Super Mario Brothers is my go-to example of a deterministic world. Every enemy has a set spawn location and will move in the exact same way every time you pass by. For instance, the first Goomba will always come at you when you move a certain amount of pixels to the right. There will always be two Goombas in the gap between the pipes after that. Later on there’s a little randomness, but mostly the player is the element of chaos in that world. Every action is based precisely on the player’s actions.

So how does one learn from their failure in this game? It may be easy to see that you learn by repetition in a deterministic system. You know every time you fail the world will be set to a certain state for you to try the exact same thing over again.

The nice thing about a deterministic system is that you can experiment. “What if, next time I time my jump exactly so I hit both of the Goombas in succession.” Repeat until success. That might sound boring to some people but there’s a satisfaction to mastering a deterministic system. Games have generally gotten more complex than Super Mario Brothers, but there are still a few stragglers that have pulled off that same satisfaction. Super Meat Boy is a great current example.

Dungeons of Dredmor for PC

This game is almost completely non-deterministic¬†(assuming you play on hardcore). I think this was probably the game that got me thinking the most about failure in games. You receive a bright happy message when you die¬†exclaiming: “Congratulations, you have died!” This tells the player, in an overt and funny way, that failing is okay.

Just about every move you make in Dungeons of Dredmor has a dice roll associated with it. It is definitely a game that most would feel is unfair. I think learning from failure in a non-deterministic system can definitely feel unfair. However, I think this is the most important type of game to learn from. In a typical first playthrough you will die by something unexpected happening. In every subsequent playthrough, you will die by something unexpected happening. So, the learning in Dredmor is more about being prepared for the unexpected. You learn what can get you out of general situations: a monster that hangs back away from you perhaps, or a group of monsters quickly approaching on your position. But the result of your solution (input) is still variable so you learn to have contingencies.

Dark Souls for Xbox 360/PS3/PC

The “Souls” games is currently one of my favorite examples of a semi-deterministic¬†world. Each encounter with an enemy is non-deterministic. Enemies will do different things depending on their AI state. There is enough randomness in that behavior to make it challenging.

The main challenge (and¬†deterrent¬†for some people) in these games is the animation system. We are used to avatars reacting to exactly what we tell them to do when we tell them to do it. Technically speaking, this isn’t very realistic. Watching any person in a foot race or even people walking down the street and you will see that physical actions cannot be performed¬†instantaneously. It takes time to move.

The deterministic nature of the animation system is one of the things that makes the “Souls” games so interesting to me. You must be VERY deliberate with your actions. Once you provide your input, the system will carry out that command until it comes to the end. So by repeatedly using your avatar’s movements you began to learn the timing and you become better at handling your avatar.

The deterministic world state allows you to practice your new-found abilities through repetition. Enemies will always be in the same location at the same time unless you have interacted with their AI system already. Upon failing a battle, you can come back to a world that is exactly the same and you can change up tactics or choose another route.

—-

My main goal for writing this was to sort out my thoughts on this subject. However,  I hope it was at least a little helpful for someone other than myself. If you disagree (or agree) and would like to discuss, please feel free to leave a comment!

Letting users define their input

I haven’t written on here in awhile, I’ve been working on a little game called Curse of the Iron Keep. It’s been a fun experience working with someone with artistic talents who is enthusiastic about making games.

However, that’s not what my subject is about. I’ve been doing a lot of thinking about game design in general. I hear it a lot in software development, “users don’t know what they want.” While this sentiment can certainly be true, I wonder if it’s always the case with games. I’m not necessarily talking about game mechanics or storyline/emotional payoff; people want developers to surprise them there. I’m talking about user interface, specifically key or button mapping by just starting the game and pushing whatever buttons the player feels should do the action they are being asked to do. Would this be called dynamic input mapping?

Some console centric people may be lighting their pitchforks and brandishing their torches, but wait, hear me out. Yes, my statement is broad but I’m going to use a specific example here and hope people will utilize it outside this use case. First some definition.

When I first played Portal 2 I was delighted when I realized the inverted look flag was set using your action when you were told to look up. There may be a game before it that did this first, but I’m not recalling one. I’m pretty sure the germ for this idea started there. So what if you started the whole game by letting users define their controls in context?

This may be a limited use case. The game has to be something mechanically familiar. A simple platformer would probably be the best test. For instance, starting off with a flat surface with an object of interest to the character’s right. “What’s that over there?” They press a button to move toward it, that is now “right”. The object of interest runs to the left. “Chase it!” “Left” is set. Finally it jumps over a wall. A button is pressed, “Jump” is set.

Now you may think this is dumb. 99% of people are probably going to push the directions you would wire up anyway. Conventional wisdom says that left on a stick, d pad, or arrows, is left. But, I’ve come across a few cases where people have crazy key binds or prefer to hold a controller in a non standard way. These are really outliers and maybe you don’t care when designing a game for a larger user base. However, consider the medium. We are engaged in a medium that is all about interactivity and yet we lock down or make a chore of a users’ first line of interaction. Maybe I want to try using the face buttons as left, right, up and down and right trigger as the jump. It might not be the best experience, but it would be my own. Maybe I don’t want to set up 20 control inputs before I know how they’re used.

Maybe this ficticious platformer is all about input action and plays around with conventions. Maybe this is a mech that reacts to the character’s mere thought, which, of course, is the will of the player. I may not be trying it any time soon, much to do and so little resources, but it’s a fun thought exercise for me. I encourage anyone who is in the position to try it and is intrigued, go for it! I would play it in a heartbeat.

Time For Change?

I’ve witnessed a lot of change in my relatively short lifetime. I’ve seen computing go from large keyboards with limited color CRTs and 64 kb of memory, to a handheld devices with thousands of times more memory containing storage you could swallow in capsule form, if you were so inclined. I’ve seen large companies prosper while others die off. I’ve seen friends and family grow and age into people they would have hardly recognized ten years prior. I’ve had a bit of loss as loved ones passed on. However, all this is a small fraction of the amount our world has changed.

So why is it that people complain about tiny changes that mildly¬†inconvenience¬†them? I was struck with these thoughts recently as Google rolled out changes. I’ve noticed that when a service like that makes a change there’s a torrent of complaints. After a certain amount of time these complaints stop, lay dormant and wait for the next change to emerge. Instead of complaining about the complaints, which seems hypocritical and useless at best, I decided to consider what makes people feel that way. I had to think back to a time where I complained about a change. The only recent example I could come up with was the Ribbon in Microsoft Office products.

The Ribbon took Clippy’s place on my top 10 most annoying Microsoft product changes. (Okay, I don’t seriously have one of those.) The second I saw it, I instantly loathed it. It was pure unbridled hatred for seemingly no good reason. Looking back I realized, it all boiled down to one element: Time. I use Microsoft Office a lot for both professional and personal projects. Not only did I have to spend time to learn the new locations and associations for features, but I had wasted time learning the old ones. I was being double billed on my most valued commodity.¬†I realized that what was “mildly inconvenient” to me, might be a giant part of someone’s¬†livelihood¬†(or job.) There are plenty of people who spend a ton of time on Facebook or in their Gmail and they have every right to be frustrated with change for change’s sake.

However, there’s one more element that puzzles me still; the value of the change. Sometimes changes introduce new and interesting features and increase the value of the product or service. Still the immediate reaction is rage. Is this still a perception of time wasted? There’s a¬†fundamental¬†problem though: things change, things have always changed and will always change. It is just the nature of the universe. Eventually you will get to the point of being able to deal with it. Why not fast-forward a bit and save yourself some of that time you think you wasted?

Side note to those who dislike the Microsoft Ribbon like I did. Check out Ribbon Hero 2. It is an excellent way to learn or test your knowledge with the crazy thing.

There Are No Bad Ideas

Nor are there are good ideas. An idea cannot have a gradation of value. An idea is merely appropriate, or inappropriate, for the situation in which it is proposed to be implemented. That’s hard to say though. Since I work best with examples, let’s use the subject of fiction. Fiction is all about telling a story that is, by definition, a lie. Fiction is fabricated events. Writing or telling fiction should be simple for anyone who can speak or put pen to paper – or finger to keyboard, as the case may be. Writing or telling good fiction is another matter. Writing or telling is the implementation part of having an idea for fiction. All of this boils down to logic.

Just because something is made up, doesn’t mean it defies logic. The parts of fiction that are the most effective are those that adhere to the internal logic of the world in which they take place. There are many elements to consider when judging if an idea is appropriate or not. However, these elements are out of the scope of this article. I’ll save that for a series. ¬†The following is the concept of “idea implementation” in a very simplified, raw form. Magic (or its equivalent) is often used in fiction to create the feeling of a wonder-filled world.

He retrieved the sword from the altar. He could feel the hum of its magic in the air around him. When he touched it, the hum intensified. The sword suddenly radiated a bright, white light which filled the chamber and lit every surface.

In this short blurb, you can easily believe that a piece of metal will glow. The character is picking up a magic sword from an altar. Magic solves everything, right?

He raised his wand. The wind assailed his robes, causing them to flap wildly. He pointed at the sky in front of him and shouted, "Elicere!" A portal blinked into existence. The air filled with a loud roar. A 1973 Oldsmobile Delta 88 fell from the sky and landed with a crash.

Probably not what you were expecting considering the previous example. A similar situation takes place in Army of Darkness. Despite the visible safety mat, an Oldsmobile falling from the sky works just fine in that world.¬†It makes sense because of continuity and tone. I’ll save further examination for later articles. The important takeaway is that an idea, no matter how silly or serious, may work better in a different context.

So why am I so concerned with the misappropriation of value to ideas? Simple, I have a lot of “inappropriate for the situation of proposed implementation” ideas. Folders and notebooks full of them, in fact. When I share ideas with someone, often I get input. Sometimes I get “inappropriate… (yadda yadda)” ideas. I’m never quite sure how to handle them. Most everyone can relate to the slight sting of having an idea shot down. I work in the Information Technology field where idea generation is abundant. With this surplus of ideas (mostly theories) having a bunch of them turned down is commonplace. It doesn’t mean that you had a “bad idea,” it simply means that it doesn’t fit the situation.

Find Something or Someone That Makes You Laugh

I want to start off by saying, there is nothing new about this subject. I’m not out to break any ground. I’m just catching up to what a lot of people have already come to realize. Laughter: it really is something that helps the human psyche.

I just graduated with a degree in Game and Simulation Programming. What I do is fun but also very serious and tough. I will admit that the prospect of someone judging me on what I do, forces me to take a more serious approach to my development endeavours. It’s easy to do when you spend a lot of time designing, coding and debugging without a whole lot of tangible output.

Last weekend I went to a Renaissance Fair. This became the catalyst to changing my life around a bit, and being better for it. As an experience, the Ren Fair seemed silly to me. I love fantasy and pseudo-historical settings, but this always seemed like an extreme I wasn’t willing to explore. I didn’t dress up. I probably never will. It’s a matter of comfort. I have a hard enough time being in crowds, to have that and be uncomfortable; no thanks! But I always like trying new things and my girlfriend likes going, so I decided, what the heck.

So as we wandered around, we passed by The Fool’s Stage. While my girlfriend was busy at a vendor stall, I looked to the stage. I saw a man dressed in some striped long johns with some other clothes over it. He caught my attention because he was whistling loudly.
MooNiE was his name. He’s part of a two man variety¬†comedy team, MooNiE and Broon. I won’t go into detail on his act (go look him up) but I laughed a lot. More than I had in a long time. After the show was over, I was enjoying myself a lot more. This feeling lasted until I got home and I looked at my project I had been working on.

In the previous couple months I had spent all day coding at work only to come home to hours more coding. To top it off, all my projects require additional people. I have no real ability to pay them, so I can’t expect them to keep up with my pace. I was burnt out and it wasn’t fun anymore. I realized my hobby of writing games was going to have to be on hold for awhile. However, writing is an activity I love and requires no additional resources.

I made a decision; which is an achievement in itself. I picked out an index card from my drawer and scrawled, “You are a writer. AT LEAST until 1/1/2012.” I taped the card up above my monitor to remind me. So that’s what I am for now.

I mostly write fiction. But to get my brain back into the motions, I started this blog. I feel more productive. I even feel better about life and myself. All this from one afternoon of laughing my butt off.

Community Building in the Design Room

Today was the first day of BlizzCon. I attended the convention in true introvert fashion,¬†via the Internet. I’m a fan of Blizzard’s games but nowhere near what it would take to get me out to the convention. I have played Starcraft and Starcraft 2, but I don’t follow the pro gaming scene. I have played almost all of the Warcraft games, but couldn’t tell you much of the lore. I played hours of Diablo and Diablo 2, but couldn’t tell you about the minutia of the community there. Unfortunately, I do not have it in me to be that passionate about one single thing. I’m interested in way too many things. However, it all fascinates me.

As the night came to a close, I watched the costume contest. I heard character names being called and noticed that some people were dressed up as their characters in various gear.

Tier 5 Night Elf Rogue
Vanessa - Tier 5 Night Elf Rogue

Let’s focus on that for a second. They are cosplaying a self-made character who inhabits this virtual world.

Pocket - Level 1 Goblin Rogue

That’s when I had a realization: the avatars of these players are technically part of the canon. I suppose the technicality in this is that their gear is really the part that is canon, but it’s close enough. Even then, some players have had the honor of having gear named after them. To my knowledge, World of Warcraft was the first large scale game in which the canonization of player characters has happened. The second closest example I can think of was Tabula Rasa. In the last patch, the developers named weapons after well known players in the community. I suspect if enough people read this I will be gently enlightened to some game that did it before these two.

To me this seems an interesting way to build a community. You are giving your players a feeling that they have a stake in the game they play and love.¬†Blizzard is a company who has this down to the letter. Where else can you find people enlisting in one of two opposing factions and bringing that conflict (in a fun way, of course) into the real world? They allow people to build an identity around their characters even if they are not role players by nature. I think other MMOs could benefit from designing tools to insinuate player characters into the world like this. Minecraft has done a similar thing with capes, so maybe it isn’t limited to MMOs. Would it behoove game devs to incorporate community building tools like this into the design? Could it go even further like naming features of the world after players who have done something important there? Or do these make players (maybe you?) feel left out?

Ashenis (Guild: Oni Fai)

If you have any thoughts about community building in the design room and the pros and cons of canonizing players and/or their avatars, feel free to leave a comment!