Building Engaging Web Apps with Game Mechanics

Share this article

When we speak of “games”, we imagine physical, sporting activities, or video and board games. Rest assured, I’m not talking about developing the next blockbuster FPS, 3rd-person slasher, MMORPG, or 2D-platformer. It’s about going beyond the simple visual appeal of JavaScript animations and CSS transforms, into game design and mechanics to create engaging websites and web applications.

What is Gamification?

“Gamification” is the use and application of game design techniques and game mechanics, in non-game contexts, to engage a target audience to change behaviours, learn new skills, or enable innovation. Game design can be applied to practically all facets of business from customer engagement, employee performance, training and education, innovation management, personal development, sustainability and health. Gartner predicts that by 2015, more than 50% of organizations that manage innovation processes will gamify those processes.

Behavioral Change

The most common use of gamification is to engage a specific audience and encourage them to change a target set of behaviours. For example, Nike’s Nike+ mobile app and FuelBand wearable technology turns fitness (the desired behaviourial change) into a game, to engage and encourage people to adopt and maintain new habits (i.e. running).

Enter.ru, a Russian retail startup founded in 2011, uses an interesting and innovative gamified approach to help shape their organizational culture. OlimpiaDA! (literally Olympic Yes!), is an in-house motivational game developed using Jive’s gamification platform, which is delivered via their intranet. The key distinction of OlimpiaDA! is that it recognises both online and offline achievements and behaviors. The motivation to perform well in OlimpiaDA! is predominantly intrinsic, which can potentially be a more powerful instrument of cultural change than extrinsic financial rewards. Points are awarded for some fairly off-the-wall game activities, and at the end of the year, the top 30 point leaders are rewarded with a surprise overseas holiday.

Skills Development

Gamification is increasingly being used in both formal education and in corporate training programs to engage students in a more immersive learning experience. By incorporating simulation and animation, and turning the lesson into a game, students are immersed in an environment which provides immediate feedback. This allows them to acquire and practice new skills in a safe, virtual environment.

Education sites such as Khan Academy and Codecademy compel students to continue their learning by acknowledging every aspect of a student’s progress through a course. Badges are awarded for key achievements and students are encouraged to share their accomplishments on social networks. This approach not only drives students to remain engaged but also promotes the site itself.

Enabling Innovation

Innovation games are structured differently to behavioral change and skill development games. These typically utilize emergent game structures to define the goals, rules, tools and play space in which players are required to explore, experiment, collaborate and solve problems. Innovation games generally use game mechanics to create a more engaging experience, but the key is to engage a large number of players (crowdsourcing) to solve very specific problems. One example is Fold.it, and how it helped create a breakthrough in AIDS research.

PBLs – Points + Badges + Leaderboards

Points, badges, leaderboards (PBLs) are the mainstay of the video gaming industry. Practically, all video games today have some type of PBL reward system, in the form of XP, Level Ups, and Achievement Unlocks.

Such games typically use competition and/or collaboration (co-op gameplay) between players and involve points for actions, badges for achievements and leader boards to drive competition. LevelEleven is one example of how PBL mechanics can help drive sales performance and CRM adoption through competition, workforce motivation and platform engagement.

Companies such as Badgeville, Bunchball, JiveSoftware and Gigya offer a variety of products and services aimed at integrating audience engagement and achievement systems into websites for both internal and customer-facing gamification.

If you can forgive the rudimentary admin interface, Arturs Sosin’s Gamify class provides a simple architecture for implementing a functional PBL mechanic in existing PHP/MySQL driven websites:

<?php
require_once './gamify.php';
// 
$g = new gamify($dbhost, $dbuser, $dbpass, $dbname);

// give John Doe 1000XP for doing something 
$g->add_experience('john_doe', 1000); 

// add 50 points towards achievement #1 for doing something specific
$g->action('john_doe', 1, 50);  

// add 25 points towards achievement #2 for something else
$g->action('john_doe', 2, 25);

Be aware that the Gamify class isn’t exactly plug-and-play – some hacking is definitely required – but it provides a somewhat basic admin interface to manage users, XP levels and achievement unlocks. There is also a very rudimentary leaderboard (top.php), and an example script (actions.php) to demonstrate XP levelling and time-based interactions with achievement unlocks.

Beyond PBLs

While PBL mechanics are the traditional hallmarks of gamification, remember that they are simply the tools with which an underlying engagement model is implemented. Focusing on obvious PBL-driven game mechanics can often detract from the underlying engagement model that gamification had originally intended. At best, this can result in “players” simply racking up points (i.e. “grinding”), or accumulating meaningless activity badges, for the sake of levelling up, or in the worst case, disengaging your audience.

According to Gartner, 80% of current gamified applications will fail to meet business objectives primarily due to poor design. Brian Burke, Research VP at Gartner Group, suggests that companies should instead focus on the more important and subtle elements of game design – such as balancing competition and collaboration, or defining a meaningful game economy.

As web developers, it is important for us to view target audiences (i.e. customers, employees, or the general public) as “players” – people with real needs and desires, who will respond to stimuli. The real challenge then, is to design player-centric applications that focus on the underlying motivations and rewards that more fully engage players.

Yukai Chou, a leading Gamification Pioneer, describes this “Human-Focused Design” rather than “Function-Focused Design”, and has developed a framework around “8 Core Drives” of Gamification:
1. Epic Meaning & Calling
2. Development & Accomplishment
3. Empowerment of Creativity & Feedback
4. Ownership & Possession
5. Social Influence & Relatedness
6. Scarcity & Impatience
7. Curiosity & Unpredictability
8. Loss & Avoidance

Otalysis Framework

You can read what each of these core drives are, their relationship to left-brain/right-brain activity, and how they are used in white-hat/black-hat gamification at Yukai’s website. Ideally, you’d want to focus on a specific mix of these 8 core game drive, which will depend on your target audience, what specific behaviours you wish to encourage, in return for what kinds of motivational rewards that are on offer for engaging with the platform.

Conclusion

We’ve had a brief look at what Gamification is, and how it can be applied in various non-game contexts to engage audiences, influence behaviors, develop or learn new skills, or to facilitate collaboration and innovation. We’ve seen how various companies have implemented gamification in their products and organizations, and tools that you can immediately use to gamify your own web projects.

Hopefully, this has inspired you to bring the fun back into fun-ctional web development. Leave a comment below and tell us how you’re using, or plan to use, gamification in your own web projects.

Frequently Asked Questions about Building Engaging Web Apps with Game Mechanics

What are the key elements of gamification in web apps?

Gamification in web apps involves the use of game design elements in non-game contexts to improve user engagement, organizational productivity, flow, learning, and more. Key elements include points, badges, leaderboards, performance graphs, meaningful stories, avatars, and teammates. These elements create a game-like environment that motivates users to engage more with the web app.

How can I effectively implement game mechanics in my web app?

Implementing game mechanics in your web app requires a strategic approach. First, identify your target audience and understand their motivations and behaviors. Then, choose the right game mechanics that align with your users’ motivations. Incorporate these mechanics into your app in a way that enhances the user experience rather than distracting from it. Remember, the goal is to increase engagement, not to create a full-fledged game.

What are some examples of successful gamification in web apps?

There are numerous examples of successful gamification in web apps. Duolingo, a language learning app, uses points, streaks, and leaderboards to motivate users. Fitbit uses badges, challenges, and social features to encourage physical activity. LinkedIn uses a progress bar to encourage users to complete their profiles. These examples show how game mechanics can drive engagement and desired behaviors in web apps.

How does gamification improve user engagement?

Gamification improves user engagement by making interactions with the web app more fun and rewarding. Game mechanics like points, badges, and leaderboards tap into users’ intrinsic motivations and desire for achievement. They create a sense of competition and progress, encouraging users to engage more with the app.

Can gamification be used in any type of web app?

Yes, gamification can be used in any type of web app, from educational platforms to fitness apps to social networks. The key is to choose game mechanics that align with your app’s purpose and your users’ motivations. For example, a fitness app might use badges and challenges to motivate users, while an educational app might use quizzes and progress tracking.

What are the potential downsides of gamification?

While gamification can greatly enhance user engagement, it’s not without potential downsides. If not implemented properly, it can feel manipulative or patronizing to users. It can also distract from the core functionality of the app if it’s not integrated seamlessly. Therefore, it’s important to use gamification strategically and thoughtfully.

How can I measure the success of gamification in my web app?

The success of gamification in your web app can be measured through various metrics, such as user engagement, retention, and conversion rates. You can also gather user feedback to understand how the game mechanics are being received and whether they’re motivating desired behaviors.

How can I ensure that gamification enhances rather than detracts from my web app?

To ensure that gamification enhances rather than detracts from your web app, it’s important to integrate it seamlessly into the user experience. The game mechanics should feel like a natural part of the app, not an add-on. They should also align with the app’s purpose and the users’ motivations.

Can gamification increase user retention?

Yes, gamification can increase user retention by making the user experience more engaging and rewarding. Game mechanics like points, badges, and leaderboards can motivate users to return to the app and continue interacting with it.

How can I keep the gamification elements in my web app fresh and engaging?

To keep the gamification elements in your web app fresh and engaging, consider regularly updating or rotating them. You could introduce new challenges, badges, or rewards, for example. You could also use user feedback to continuously improve and refine your game mechanics.

Ignatius TeoIgnatius Teo
View Author

Ignatius Teo is a freelance PHP programmer and has been developing n-tier web applications since 1998. In his spare time he enjoys dabbling with Ruby, martial arts, and playing Urban Terror.

badgesgame mechanicsgamesgamificationPHPxp
Share this article
Read Next
Get the freshest news and resources for developers, designers and digital creators in your inbox each week