Integrating DIY Game Mechanics with Drupal


Trying to grow a community, user-generated content site is hard. Engaging your users and making them “sticky” requires that you give them some reason to care about your site - once of the best ways to do this is to add some elements of game mechanics to your site. Successes like FourSquare, Gowalla, and StackOverflow show the value of providing badges, status, reputation, or other virtual goodies to your users. Drupal 6 and 7 community sites can take advantage of several modules that provide these game mechanics to your users.

Adding Fun to your Web Site

There have been a lot of good discussions in other blog posts about ways to add game mechanics to your web site, making your site fun and sticky, engaging your users, and using social media to engage them in game mechanics. Summarizing them, you should definitely add badges users can show off through social media outlets, let your readers rank themselves in leaderboards (site-wide or on a more granular basis) and give them some sense of completion or accomplishing a goal, and always have additional levels, tasks, or badges they can earn - don’t make them too easy to get.

Some great articles on game mechanics:

And for the contrarian view:

If you’re not using Drupal, or you’re not comfortable managing game mechanics for your web site, several startups have stepped into the space of providing game mechanics as a service - I haven’t used any of them, but here’s a small list:

Finally, website building tool DevHub added game mechanics - a case study of they jumped ahead of the competition in a crowded market with game mechanics, maybe using BigDoor?

Drupal Modules for Game Mechanics

There isn’t a one-size fits all solution for adding game mechanics to Drupal sites. There are a couple of modules that you can cobble together to create a solution, but there’s a market opportunity for one of the above players to launch a Drupal module that hooks into both their hosted service and the Drupal userpoints module and its contrib modules to provide a seamless experience - the easier the third party service makes it, the more customers they’ll get.

When you create your own game mechanics solution in Drupal, you’ll need to decide what direction to drive your users, either an overall point system, or a badge/achievement system (or both, of course). With points, the core module you’ll work with is User Points. User Points ties in with a number of other Drupal modules, core and non-core through the User Points contrib module collection. In addition to the modules in that collection, there are a number of other User Points integrations listed on the User Points contrib page.

For badges and achievements, there are two modules - User Badges and the newer Achievements. With User Badges, you’ll have to setup your own rules using the Rules module to grant badges to users, unless you just want to have them defined by their user role (and what’s the fun in that?). A better starting point for game mechanics is probably the Achievements module, but it’s very new, not in CVS, and needs a lot of integration work to get it to the level of User Points!