Board Games Future

tl;dr: The rapid pace of technology invariably changes our entire world, board games will be no exception.

I’ve posted on great games, and how their designers are constrained today. Now I’ll talk about bit about the not-so-far-off future and how games will be designed.

The Future

The year is, like, 2018 or something. Everyone (seriously, everyone) now has dozens of free cores and half a dozen gigabytes of free memory in their pockets, not to mention hardware accelerated, web-connected, 3D graphics in high def. And if they didn’t? It wouldn’t matter: screens are now everywhere. (Look around you or your friend’s home: they’ve begun to pile up already). Odds are, your digitally-impaired friend can reach onto the nearest surface and grab an idle screen backed by idle cores and free memory.

Actually, the nearest surface IS a screen, and the cores and memory are provided on-demand and just-in-time by the local, low-level hardware network. What’s that? Well, when your wardrobe becomes a microcosm of the modern datacenter (as is virtually guaranteed by the dual forces of miniaturization and marketing), you’re going to want to use it! Don’t worry, the software will be written by ex-Amazon and Rackspace alums, veterans of today’s cloud wars, ex-patriated from the corporatocracy and working in the open, for everyone’s benefit…

Oops I started writing sci-fi. Sorry.

So screens are everywhere, including our table tops. Apps ARE now a given. Game designers can no longer possibly claim to have made a game in isolation of ubiquitous table top computers. And why should one try? Those younger, new-age game designers are making much better games in the presence of technology, anyway! The damned machines set up, teach, manage, play, and even clean up the games when we’re done! And when the rules get updated, everyone gets the new versions instantly!

If you take my (possibly crazy) visions of the near future as given, you can understand why I want to see today’s talented game designers designing games in that future environment, today. So, how do we do that?

What to Build

The first few steps to prototyping such an environment (in my little web developer mind) look something like this:

  1. get some pixels on the table
  2. get a modern browser rendering onto said pixels
  3. prototype some software for a specific game (something like, idunno, “random hex terrain generation and rendering for Mage Knight: Board Game”, or something)

Thinking about it, a simple, graphics layout tool could go a long way simply by enabling a visualization of game state. Indeed, much useful can be done with a big, visible display, without invoking intense rules lawyering (infoproc!) Programming “draw a grass tile here and a water tile there” is trivial compared to teaching a machine graph theory and calculating movement point expenditures.

In the next installment, I break out the power tools (read as: “purchase some power tools”) and make steps 1 and 2 a (makeshift) reality.

Board Games Today: Low-tech (but Trending)

tl;dr Technology is creeping into board games even now, but at what cost?

I’ve already extolled the “soft” virtues of modern board games. Now I’ll discuss how the magic is made, and ponder the ways technology is starting to creep into the medium.

Game Design: Math + [x] = Fun

What makes these games so fun? I think it’s actually magic. Yep, real magic.

Ok, it’s magic borne of a complex interplay between systems of resources, lovingly crafted and play-tested by game designers.

Currently, this complexity must be represented and managed with traditional board game materials: dice, cards, boards, chips, figures, etc. Furthermore, the rules governing these systems must be reasonably understandable and unambiguously executable by humans with their big, loud, obnoxious brains. Game designers aren’t shy to make players do some math, track some stats, and generate some entropy just to make the game work from turn to turn. All this before asking you to strategize and actually take your turn!

There’s a limit to all this, yeah? There is only so much room in players’ heads for this kind of information processing (infoproc) component to a game. And let’s face it: it’s a barrier to fun when picking up a game for the first time. You’re frantically scrambling to learn rules and connect the dots at first, and until you assimilate enough of the game to engage flow, you’re unlikely to think fondly on the experience. Undoubtedly, some never hit this flow.

There’s an art to this game design thing. Balancing just the right amount of infoproc with an even and engaging pace — and don’t forget it has to be FUN! — is truly a challenging endeavor. The designers of these games deserve immense credit for ever getting it right at all!

Game Design: Math + [computers] = Fun?

But I’m a computer guy. When I see infoproc tasks, I can’t help thinking “”a machine should be doing this for me.” Furthermore, we all have overpowered machines in our pockets, even now. Why shouldn’t they do the heavy lifting for us, opening the players to more strategizing, more scheming, more table talking, and more fun?

Indeed, we are already seeing board games spill into apps. There are of course digital ports of entire games, (the Ticket to Ride and Carcassonne apps are Exhibits A and B of ideal games made into excellent apps), though game ports of this sort have existed as long as video games.

Perhaps more interestingly, we’re also seeing what I’ll call companion apps. These range from generic, dice-rolling apps and game-specific “scorekeepers”, to full on commercial add-ons that aim to simplify and augment particularly complex games (and the publisher’s bottom line, but that’s no crime).

Game Design: Math + Computers = Laziness

I have issues with both of these options. Porting games to full digital versions can provide a compelling experience, but it’s a different experience. For instance, I play board games as a way of avoiding video games, getting away from the self-inflicted digital isolation that is my life, and returning to direct social interaction with my friends (and nemeses.) It thoroughly defeats the point for me to eschew the crowded gaming table and return to a lonely device, only to play a game a dozen times daily against spare processor cores coldly doing the work once provided by warm, present, gloriously unpredictable people.

Companion apps are better, but something is not quite right (…yet). Perhaps they assist a person running the game, but that doesn’t fundamentally improve the collective experience for everyone. I also believe this could impact the purity of a design. Simply knowing that a publisher will make some apps to smooth over the fiddly bits of a design must, at some level, taint a designer’s decisions. This is probably an unreasonable thought, but there are some sloppy games that sport an inordinate number of apps out there…

Enough fud! We should be excited about the future, not scared of it. In the next post we’ll explore a near future scenario and how it may affect game design in the coming decade.

Board Game Problem

tl;dr: Board games aren’t what they used to be. Go out and play a modern board game today!

I have a problem.

Ok, I have more than one problem, but some of them are fun to talk about. Some are even potentially interesting to work on!

My problem is board games. I love them. I’m probably actually addicted to them, but people don’t talk about you for having a “degenerate board gaming problem”, at least not the way they do with heroine, Four Loco, or (shudder) Magic: The Gathering.

Eurogames

I should explain exactly what I’m talking about, lest you think I like charging my friends multicolored rent (which would be BORING).

I’m referring to a class of games we call “eurogames”, “German-style board games”, or even “designer board games”.

On that note, pop quiz: Do you know who actually designed Monopoly? If you answered “the Parker Brothers?”, you would be wrong. Parker Bros was just the original publisher, and now even that company is owned by Hasbro. It’s hard to build a relationship you care about with a multinational corporation…

How Are They Different?

So what’s different about these newfangled games? For one, they’re all about strategy and less about luck. Yes, you’re expected to do that “critical thinking” thing: laying plans, executing them, and, most importantly, feeling like you won or lost based on your own choices. I frequently lose, even when teaching newbies to play. But I have an absolute blast learning and teaching every single time.

Indeed, player elimination (or losing before the end of the game) is a big “no no” in these games. Ever invited your friends over to play Risk, then lost in the first hour? I hope you didn’t have anything else to do that night, because now you’ve got a mob of jerks squatting on your dining room table for the next 6 hours. This, folks, is a subpar definition of “fun”.

Instead, eurogames frequently offer “catchup” mechanisms for those lagging behind the group. It’s akin to the Blue Shell in Mario Kart, which only appears for players who are losing badly, and only targets the leader. Eurogame catchup mechanisms aren’t so heavy-handed as explosive, leader-seeking turtle shells; think more along the lines of “getting first dibs on scarce resources”, or “suffering less taxation due to having a smaller empire”. These mechanics are fun!

The hidden benefits of board games, for me, have to do with mitigation of my other problems. For instance, if left to my own devices, I would probably play ever video game created, never go outside, and let all of my social relationships languish. Compared to that, long, deep-thinking sessions in the immediate presence of my friends (and enemies!) are much preferred. This is therapy, people!

What Should I Play?

So, what games would I suggest you play? I wish it was that easy! Of course the answer is “it depends”, but here’s what I do:

  1. go to BoardGameGeek’s top games list
  2. find one that looks cool
  3. read about and make sure it resonates
  4. buy it 
  5. play it
  6. go back to 5.

The games list is ranked, with the top 100 on that first page. If you don’t find something you like on there, I’d be shocked. But if not, the top 1,000 games are probably all great. Indeed, there are more than 8,000 ranked games on the site! (As an aside, the many versions of Monopoly appear down in the 8000+ zone. That means it’s bad. The internet doesn’t lie.)

Designer Games

I still haven’t taken the time to look up the original designer of Monopoly (I know there’s an entrepreneurial story of persistence in there or something…), but I have no such uncertainty about these new games. We call them “designer games” because each game’s designer is named right there on the cover of the box.

The designer is important! Why? First of all, game design is a work of craftsmanship undertaken by human beings, and that should be celebrated on its own. It’s also helpful because they make lots of games, and if you like one game by a given designer, you’ll probably like another. Amassing a knowledge of game mechanics and learning which designers (and even publishers) to ascribe them to has been extremely rewarding. I love the games that I love, and I love buying more games from the people who bring them to me. This is important to me when I’m deciding where to part with my hard-earned money.

Another triple-A blockbuster video game title chock full of explosions? Another overpriced copy of Scrabble purchased from the local mass market retail establishment? No, thank you.

I’ll take the latest release by Vlaada Chvatil, please.

Civilization 5 Early Feature Impressions

This started as an email to Omar, but it quickly grew too epic and I decided it needed a blog post of its own. You see, Omar linked me to some exciting feature announcements about the upcoming Civilization 5. He briefly mentioned his ambivalence at the new developments, but I found myself unable to be so terse. What follows are my impressions of the current news of the state of Civ 5. Sid MeierGorgeous! Hex-based maps lend a marked improvement in terrain appearance. Lots to be excited and scared about! I’ll take them line by line:

Hexes

Great! 6-degrees of equal freedom is HUGE and adds stability and nuance to your traversal-based strategies. This also allows for a prettier, more organic game map, a visual leap not seen since… well, Civ 4.

No More Religion

I liked religion and corporations a LOT, but they were definitely peripheral to core gameplay. Perhaps these are more suitable as special settings, scenarios, expansions, or mods? I’m willing to make room in the game model for new, more-amazing things, but I admit it would pain me to learn that these were pulled due to social pressure (the bad mainstream).

No More Espionage

Admittedly, I didn’t use spies much, and maybe espionage doesn’t need to be done full-tilt the way Beyond the Sword finally did it, but this seems like something that shouldn’t be pulled altogether. I’m unsure. Perhaps the fact that I didn’t use it, and that most people didn’t seem to use it until they’d mastered the game is a good sign that there are better things to focus on.

One Unit Per Hex

Wow, this has immense implications. Hopefully this cuts out the pain of doing a multiple-dozen-turn arms build-up only to mount a lackluster assault against a foe who has since tech’d up. But good lord, this has fundamental, cross-cutting gameplay repercussions! I can’t even figure what else this means… What about co-occupying hexes with friendly foreigners? What about just passing through units on the road? Are workers, merchants, missionaries (oops!), settlers, etc. affected? WHAT ABOUT PROTECTING MY AGGRESSING TREBS?!?!?!?

Non-affiliated Cities

This is (potentially) genius. Cities that are not controlled by any major faction could open the doors for radical new types of gameplay. I can’t help but think of our favorite scenario, Crossroads of the World, vying for influence in mutually-uncontrolled cities. This must mean more than just non-aggressive barbarian cities, right?

Return of Advisers

Personally? Don’t waste your development resources. Not on animated advisers, and not on over-the-top leaders. Wonders of the World? Yeah baby, that’s where I want the multimedia royal treatment.

Mainstream Leanings From Civ Revolutions’ Influence

This one’s really delicate. You can take it to mean a lot of things. If it means “streamlined UI”, well, that’s hard to argue with, especially in a game that’s essentially about distilling Frigate-loads of information into actionable knowledge. If it means “your mother can beat it on Deity”… well, obviously it doesn’t mean THAT. I think as long as the depth and nuance of the simulation is intact (and what is Civ if not a simulator?), they can’t do too much damage by “over-rounding the corners”. I mean, why SHOULDN’T your mom be able to beat the game on Dan Quayle difficulty? Sid Meier"Ready! Aim! …" The One Unit Per Hex rule spreads armies thin and changes the face of combat. Finally,

Expanded Focus on Tools

Honestly, this is pretty much the key to it all, and the reason Civ 4 started out at a solid 9 and went to fucking 11 with its expansion packs (not to mention Colonization!) A serious focus on building the tools from day one implies a solid game model, or even game model model, if you will. I actually DON’T care about most of the mods that will be made by fans (immense love for my fellow creators, of course!) What I DO care about is Firaxis giving itself a solid foundation to do two things:
  1. build a solid, quality first-run game that will recoup some cash and justify the endeavor; and
  2. build the veritable Oxford in their Library-University-Observatory city, doubling down with a couple of expansion packs for the coup de grace: the true vision of awesome, human-history simulation that we all crave to no end

Conclusion

If it wasn’t clear already, they’ve got my money regardless. Frankly, I trust the developer at this point, and that’s what really matters. My consumer heart believes that Sid is firmly on quality control, and there’s just no way to denigrate the Symphony of Awesome that was (is!) Civ 4. Firaxis SHOULD take liberties with the game: it gives them the chance to deliver the unexpected and take the simulation to the next level. They SHOULD cut some features: the game model must make room if we are to be wowed anew. They SHOULD bite off a bit more than they can chew: it gives them the chance to over-deliver on the X-packs. And honestly, they should shoot for the mainstream, if for no other reason than the fact that Civilization is probably the finest form of edutainment ever created, and I can think of no loftier goal throughout the history of humanity than teaching what needs to be taught in a way that makes people want to learn it. (…and I’m sure I’d prefer if my stupid Civ jokes fell on less-deaf ears!) Your thoughts and flames are welcome.

MongoMapper with Formtastic: Almost Perfect

I finally dipped my toes into MongoDB last night after catching some inspiration from the Ruby community. But I hit a basic snag doing something that would be Really Freaking Cool if it worked (and by all accounts it SHOULD work!), so in lieu of doing any real work yet I thought I’d post and get some feedback first. Mongo is one these new-fangled NoSQL databases, which means it’s schemaless and doesn’t require migrations. So how do you manage your data? Grab a Mongo library and start defining some models! I’m partial to John Nunemaker’s MongoMapper, here’s a snippet to show how easy it is to play: Note: Another nice Ruby-Mongo library is Mongoid by the nice folks at Hashrocket. So I read this MongoMapper post on bitzesty yesterday (lots of nice examples there, as well) which goes so far as to mention a few powerful Ruby gems that are MongoMapper-compatible. Amongst them was Formtastic, a semantic form builder for Rails which I am already a great fan of. And therein lies the Really Freaking Cool thing I mentioned earlier: you see, Formtastic supports this awesome syntax for auto-generating a form based on the attributes present in a model: Really Freaking Cool Thing: While you’re still prototyping your data model, why should you have to make changes to all of your forms (new, edit, other nested forms, etc) when you make a change to your model? You shouldn’t! Just make a quick adjustment to the model and let the forms fall out. It was this magical world of instantly-propagated data changes with no migrations and no view templates that made me jump in and give it a shot. Alas, an error:

Action Controller: Exception caught Uploaded with plasq's Skitch!
Looks like MongoMapper doesn’t quite walk or talk like an ActiveRecord duck in this case, but that doesn’t seem too hard to fix. I’ll have some time to get to it this weekend, but I wanted to see if anyone else (preferably the maintainers of these plugins!) had an opinion before I dig deeper. The normal Formtastic fields work fine, but if you rely on reflection (call ‘form.inputs’ without specifying attributes), you get this ‘reflections’ error. This might actually be a trivial one-line fix in MongoMapper, I just haven’t looked at the source, yet. I’m doubting Formtastic needs to do anything right now, but one can’t help dreaming of the coming Rails 3 world where things like this can be loosely coupled yet tightly integrated with little/no work… This IS a cool idea, isn’t it? Having not totally grokked the new way of thinking with schemaless DBs, I still question all of my instincts in the area. But this just seems like a natural reduction of overhead for dealing with these far-less-strict data sources, especially early in the prototyping phase of a new app! Your thoughts welcome!

Twitter Tag Cloud for #Code2009 Hashtag

Update: Just found this nice dynamic chart created by @casron. There’s a trending topic for programmers on Twitter right now: #Code2009. The idea is that you tweet and list all of the languages and environments that you’ve worked in this year. Seems like a great, simple way to quickly reflect on your past year and plan for next year. (I also like @rjurney’s suggestion to review your Amazon purchases.) But with all those people participating in the #code2009 fun, I quickly got the urge to analyze the data. I couldn’t find a quick way to throw a tag cloud together for a given twitter search, but I did find the Search Cloudlet Firefox plugin that did the trick. Here’s the results as of a few moments ago:

#Code2009 Tag Cloud

Shows up pretty much as expected, I guess! Javascript, of course, has become The World’s Most Popular Programming Language, according to Douglas Crockford. Ruby and Python continue to suck all the oxygen out of the room in terms of what the Cool Kids are using. SQL only makes sense, as most databases are still RDBMS, much to the chagrin of the NoSQL movement (of which I’m rapidly becoming affiliated.) Java’s got a strong showing, but where’s .NET and their “enteprisey” ilk? I guess their offices block Twitter traffic ::snicker::

This was just a quick-n-dirty exercise for fun, of course. I wouldn’t read too much into it, and I really wish the tag cloud would go much deeper as there are clearly many, many more languages that are being tweeted but not represented here. Still, it is interesting how social media is putting more data and potential metrics at our fingertips. And this whole exercise begs the obvious question: What will your #Code2010 tweet look like a year from now?

Atlanta Javascript Meetup Cappuccino Talk, 12/10/09

I gave a presentation on Cappuccino to the Atlanta Javascript Meetup on Thursday, December 10th at Ignition Alley. It was a lot of fun! We had a great turnout and I met a lot of passionate developers, despite clashing with the PHP, Python, and Cocoa meetups. In fact, I understand the Cocoaheads meetup actually included a talk on Cappuccino as well, and I’m curious what all was covered. There was another talk before mine: Jenny Steele presented on Javascript Build Systems, and gave us insight into the process of evolving an appropriate build script for your unique project. This is a terribly important subject as Javascript continues to march into the realm of Something Real Developers Do (as opposed to the almost entirely copy-n-paste-based ecosystem JS has been for so long.) As we are now seeing, scaling isn’t just about your back-end and web stack: it’s actually largely about playing the HTTP and caching games correctly! JS build systems are your key to getting this step right and getting on with your business. My talk was focused on introducing the Cappuccino project to our local developers. Have you ever set out to build a rich web app using HTML, Javascript, and CSS, found that you can get some interesting things working pretty quickly, but every next feature is harder and harder to bolt on? It’s still early and plenty immature, but I have been amazed at how well I can architect a nice web application using the tools WITHOUT the fear of the next feature breaking my app’s back. It’s good enough to start building apps today, and I have faith in the 280 North team to continue delivering on the tools, API, and most of all: productivity! My slides are embedded below: And the resource links to the project and some of the awesome apps people have already made with Cappuccino:

Actionscript 3 Filter Performance

I ran into performance issues while trying to use a filter on the DisplayList in ActionScript 3 this week. I wanted a nice, gradient dropshadow on a large UI component, but loading in a big, expensive Bitmap image to do the trick just didn’t seem appropriate.  So I decided to use the built-in GlowFilter class.

Then my framerate went to hell.

What I was doing wrong was adding the filter to a DisplayObject that had other interactive children: in my case, SimpleButtons.  SimpleButtons have over- and down-states, which apparently cause the GlowFilter to recalculate itself frequently while the mouse is over the buttons.

To illustrate, here’s the component:

flashplayer-pano-test-virtual-tour

See the subtle dropshadow around the curved surface? That’s our culprit!

The fix was to make a separate component with the filter applied to it, then add it as a child to the component, instead of applying the filter directly to the component itself.

The rule: Don’t apply BitmapFilters to objects with dynamic children!

(If you know more about what’s going on here, please leave comments. This is mostly educated guesswork on my part about what’s happening and Adobe seems to have a problem with documenting all of the strange quirks of their platform.)

From Startup to Free Agent

We closed the doors to the Lab this week.  Looking at the emptied space was pretty sad, but we have nothing but fond memories of the place.  So many great people and projects graced our makeshift office during its brief existence this year, and I’m grateful for everyone’s support.

We simply ran out of time as a company!  As a bootstrapping startup, you’re always in a race against the clock.  The modest revenue streams we’ve created over the past year and a half just aren’t enough to sustain us, so it’s time to try something new.  Snowcap Labs will not be taking on new work, and each of us is exploring our own options for what to do next.

That said, I don’t exactly want to go fly a cubicle for 60 hours a week, now.  So I’m evaluating my options (and there are a lot of really great projects to get involved with in Atlanta right now), but ideally I will find something that I’m excited to work on and that can offset my personal cash flow needs.

If you’d like to discuss your cool project with me, or you just want to shoot the breeze, get ahold of me (via Twitter or just leave a comment) soon and we’ll schedule a lunch or coffee (or even drinks!)

Emotional as all of this is, I see this as a good thing.  There are no hard feelings, we’ll each get residual checks going forward, and I’ve still got our (wicked!) web video recording software at my disposal.  I’m very excited about being Atlanta’s newest entrepreneurial “free agent”, and you can bet I’m already thinking about how to get into a new coworking situation!

START Atlanta Kickoff Weekend

9 out of 10 Atlanta entrepreneurs agree, Atlanta’s investment ecosystem is sorely lacking in the area we need it most: small investments in good ideas.  We aren’t talking about millions or even hundreds of thousands of dollars; that’s WAY more than most of us need!  We also aren’t talking about mature businesses with great projections; these business don’t look good on spreadsheets because we’re still building them! So we banded together to create START Atlanta, a non-profit to fill exactly this void.  The goal of START Atlanta is to get the funding and support that Atlanta’s young startups need to cultivate their ideas, build great teams, and “graduate” them to the next level (whatever they define as the “next level”.)  We will achieve this by bringing the community together and creating a site that acts as a hub for investors and high-net-worth individuals to match up with early-stage companies and entrepreneurs.  We hope that low friction and high visibility will foster the kind of growth Atlanta’s startup sector desperately needs. We’ve already arranged some great sponsors and excellent buzz around the idea, now we just need to build the site!  So we’re holding a weekend event to do just that.  So if you’re an investor, an entrepreneur, a developer, a designer, a blogger, or a potential sponsor, we’d like you to participate! We created a Facebook event where you can go to RSVP for the weekend.  Here are the details and schedule breakdown for the weekend:

Open Discussion: Friday, September 19th, 6:30pm

The first night is dedicated to listening to the community.  We want the ultimate customers (entrepreneurs and investors) to participate in helping us gather requirements for the site.  What functionality do you need?  What features do you wish other investment sites offered? Everyone is welcome on this night.  We want a spirited discussion that sets the stage for the whole endeavor.  As investors and entrepreneurs talk out their mutual needs, legal and insurance will be offering advice, developers and designers will be gathering requirements, and you lovely bloggers will be covering the birth of this magical new entity in loving detail.

Development Jam: Saturday-Sunday, September 20th-21st, All Day

The rest of the weekend is devoted to construction of the actual site.  The development team is made up entirely of local designers and developers, many of whom are also (of course) full-time entrepreneurs, volunteering their time, talent, and effort to seeing this vision realized.  We have all manner of product management roles filled, and with many Startup Weekend Alumni in attendance the weekend promises to produce the amazing results we’ve come to expect from this community.

Location: The Appcelerator Offices in Buckhead

Here is the map to the address, but i understand that directions from there are still pretty difficult.  The best i can tell you is cross-reference the map with this image, and be nice to security: If you have any questions or concerns, just drop me a comment!