Blog An exploration of the art and
craft of software development

Game Design for Social Interaction

Posted by Marty Haught on Monday, November 29, 2010

One of the elements of mountain.rb that was a bit unique for a software conference was the pioneer card game. I purposely chose to include this game to encourage social interaction, especially among those that didn’t know each other already. I wanted to do this in a fun and entertaining way.

A spread of cards

When I started planning mountain.rb back in the spring of 2010 I knew I wanted a way to encourage interaction but I wasn’t sure how I’d do it. I settled on doing a game of some sort and after some thought chose a card game. Having enjoyed playing Magic The Gathering (MTG) years ago, I liked the trading card game concept and thought that sort of format would work well in a conference setting. Having something physical was important as it would require people to physically get close and exchange the cards. I always liked the way cards felt in my hands whether they were playing cards or MTG. I knew I could limit the number of cards and that they would easily fit into our badge holders and thus limit the inconvenience of having to find some place to keep the cards.

Attendees storing cards in their badge holders

As the conference had a pioneering theme it made narrowing down the game even easier. I decided to go with a time period from the pioneering days such as the late 1800s. There were plenty of historical references to give me fodder for the game itself. I found a local artist that specialized in an old-style of illustration that would perfectly represent the game. He even put up examples of the cards on his blog as the conference started. Being a fan of games and a modest game designer myself, I relished the thought of trying to engineer a trading card game to meet my goals at the conference.

Upon registration attendees would get 6 cards along with their other registration materials. I didn’t reveal how to play and told everyone to wait until the welcome address.

Registration table with card stacks

I decided to go with a resource-based game where you try to get the highest points. Since I wanted to facilitate trading, I had to make the cards in each player’s hand be mediocre and thus force them to trade to improve their score. One way to accomplish this was to give each player a pioneer type such as Prospector, Cowboy, Trapper and Homesteader. This way if I gave a cowboy assigned attendee cards better for the other three types, then he’d want to give away cards that were worthless for him such as an ore vein or mountain to a prospector who would highly value those cards. In return the prospector may have a few cards valuable to the cowboy such as cattle or plains. To keep people from changing pioneer type, I put their type on their badge. To make logistics simpler, I had 4 different badge types that were blank. This way when you registered you used a sharpie to write your name on the badge (and whatever else you wanted). Trying to line up printed names on 4 different badge types seemed like a lot of work.

A cowboy badge

One of the cornerstones to the game was creating a card economy by making cheaper cards more available while higher point cards were less common. This was done so that those with high point cards would be careful in how their traded their cards and that they might be able to get a few high points cards along with low point ones. They might also try to trade a high point card with a low point card for two medium point cards. My goal in all this was to get people trading and it worked.

Attendees trading cards

The game wasn’t truly balanced as some attendees had no interest in playing and simply gave their cards to their friends. This gave the friend many more cards and he could essentially discard the low valued ones. However, there was no easy solution to fix this and ultimately it didn’t keep most attendees from interacting and trading.

While I had the general design of the game worked out in my head for months, I actually didn’t finalize the scoring system until the night before the conference. As the sole organizer I simply had too much on my plate and I felt confident I could pull it off with a couple hours of focused design. You can read the simple rules here:

Game Rules

In game design there’s a delicate balance between a fun challenge and being overly complex. I wanted to keep the game fairly straight forward and easy to score but still compelling to play. There was even a touch of realism in the kinds of cards you would want based on your type. This should make the game intuitive to play. Unfortunately, since I ran out of time generating the rules, I wasn’t able to finely tune them with play testing. But this is fine as I really just wanted people to interact.

Attendees trading cards

One of the problems with my last minute scoring system was that there were some logical flaws in the rules. Homesteaders had an unfair advantage to the other pioneers since having an Ox would double their beast of burden points if used on the plains. This allowed a 6 point ox to be worth 12, higher than any other single card out there. I did realize this as the game was being played and even asked if the audience found the flaw. Other flaws were exposed in the rules, which were not always clear. For instance, the rules didn’t explicitly state you needed to have resources or a tool to get resource points even though this is the spirit of the game. You could essentially have all six beasts of burdens such as a homesteader with 5 oxen and 1 plains. This is why you play test as you’ll discover people building decks that violate the spirit of the game. Once you learn this you clarify the rules and continue to play test. Since this was a ‘lite’ game I didn’t stress too much about these issues and just let people play the game.

I also turned some of these lemons into lemonade as best as i could. I originally had wanted to write a scoring app or some other way to calculate the winners. Instead I challenged attendees to write one themselves and share it. This would get them writing code and collaborating with others to do the work that I didn’t have time to do. On the last day of the conference, I asked those to show off their work on stage. One group came up with an app for finding cards to trade for.

Showing off app for trading cards

Instead of making the game purely about points, I allowed other objectives such as having the worst deck for your type but with valuable cards in general. I also asked others to alternatively tell a story with their cards. Towards the end of the conference I invited people to the stage to show off their decks, share their stories and show off their apps.

Displaying cards

All in all I thought the game was a success and well-received. Clearly this sort of thing isn’t for everyone. Many who come to a conference are not interested in playing a game and simply want to watch the sessions. Some were fine giving away their cards which created an imbalance in valuable cards for the player with two decks.

Since my main goal was to get people trading cards and having a good time, I think it worked well, warts and all. I think it’s good to take risks and try new things, even if they don’t always work. There’s no need for a software conference to be like all the others and border on uninspiring. I know I’d like to do a different game/activity with the next conference I organize. We’ll see how that plays out.

blog comments powered by Disqus