Skip to main content

How to make a good Free to play game.

Free to play games have become really popular recently and one would assume that a large reason for that popularity at least for the game makers is that they are likely more profitable than other business models. They all share the same basic concept for how to make money: give away the game for free and then charge customers for access to something within the game. The idea is that if you have a game that costs money up front you have a limited number of customers that will be willing to pay that up front price. If instead your game is free initially, then you open that game up to being played by everyone. With no price barrier to get started, even someone that may not normally have been interested in your game could give it a try. Now that the game is open to the maximum number of potential customers, you hope that a number of them will buy or pay for part of the game.

This is where the difference comes, in how a game gets you to pay. I have experience with many games that follow the free to play model, but want to focus in a 2 specific games. One that does it really well, Hearthstone, and one that does it really poorly, Peggle Blast.

I loved the original Peggle game. I payed whatever the full price for it was and played it a lot. When Peggle Blast recently came out I downloaded it without thought and started to play. At first it seemed like a nice new version of Peggle and designed to fit the iPhone really well using the portrait orientation. I completed a few levels and was introduced to some power-ups that I was given for free and notified that I could purchase more if I needed to. Up to this point, I have no problem with the game or how they are trying to make money. Then as I ran into harder levels and did not complete them on my first try, I began to lose life point until I ran out and was told I could no longer play until I either waited a set amount of time or paid money to by more life points.

Any mechanism that prevents the player from playing the game, in my opinion, is a bad way to monetize your game. You should want to encourage your players to play the game as much as possible rather than penalizing them from enjoying your game. After a day or 2 of running into the same wall, I deleted the game and was done playing it without paying any money. So Peggle blast took a franchise that I enjoyed and was excited to see a new version of and flushed all of that good will down the drain so that they could try to make money off of people that don't have the patience to wait for the life refill timer to run out. Heres the crazy thing, I would have been willing to pay some amount of money for this game had they made different choice in how they asked for money.

Hearthstone is a game that I love that is also free to play, and I have probably spent more money on that game than just about any other game in several years. The biggest difference is that Hearthstone allows its players to play continuously without ever needing to pay any money if they don't want to. Anything you spend money also bring a permanent value. If you buy a pack of cards you will always have access to the those cards in the future. If you buy entry into the arena, you get 1 run through the arena, but you are also guaranteed at least the reward of 1 pack of cards for completing the arena which you then have access to going forward. Peggle Blast on the other hand, lets you buy life or power-ups, but they are 1 time use. If you buy more life and then run out again your options are to pay more or wait. I feel like the fact that Peggle's purchases are non-permanent make them less appealing and at least for me, much less likely to be purchased.

So how should Peggle Blast have approached the Free to play model in order to still make money, but not alienate any fans that aren't willing to put up with the limited play option? First, obviously, they should have no life limits, no penalty for wanting to continue to play their game. The more people play your game, the better off you are going to be in the long run. If people have to leave your game because you won't let them play anymore, then you are going to miss out.

Second, they could have had purchasable levels/worlds within the game. If I completed the 1st or 2nd world(collection of several levels) and was having fun with the game, and then was asked to buy the 3rd world, granting me access to several more levels, I would have been much more likely to have paid for that, because it would have been a permanent access that I could have played as much as I wanted to.

Third, Peggle has different characters that change how you interact with the levels. The unicorn has a special ability that is different from the gopher. Why not expand upon that and add more options? Give away 2 or 3 characters and then have 10 more different characters available for purchase. These characters should probably also be available for free if you collect enough in-game currency, but if you wanted to unlock them sooner you could get them by buying them.

If Peggle had the ability to buy more levels and characters, they would also have a built in method for continued expansion of the game. Every month or 2 they could release more levels and more characters and their customers would have more reasons to continue to play the game, rather than completing the game and never coming back to it.

Lastly, they should add some sort of daily task that could be completed that would reward the player with in-game currency. This currency could be used to buy power-up or unlock characters. Building up enough currency to buy everything would take a long time, players wouldn't need to have an expectation of getting everything without paying, but having a daily reward would keep people coming back. It would also give players a sense of accomplishment within the game every day even if they didn't pass any new levels.

People play games to have fun. If a game is designed around the concept of how to make money at the expense of not being fun, people will stop playing that game. In the world of free to play games, the games that are going to be successful and have longevity are the games that are fun to play and don't penalize their players. Once the game has been released and people are playing it, the way to make real money is going to be by sticking around a long time, not making a big splash and then forcing all of your players away as they realize that your game is not fun.


Popular posts from this blog

Converting a Large AngularJS Application to TypeScript Part 1

I work on a project that uses AngularJS heavily. Recently we wondered if using a preprocesser like CoffeeScript or TypeScript for our JavaScript would be beneficial. If our team is going to switch languages, we would need to be able to convert existing code over without much pain and we would have to find enough value in switching that it would be worth the conversion.

I had read an article that stated that because TypeScript is a SuperSet of JavaScript, you could convert a plain JavaScript file to TypeScript by changing the extension to .ts and not much else would need to change. I wanted to test out this claim, so I took a file that I was familiar with, an Angular Controller, and tried to convert it to TypeScript to see how much effort it would take and then try to figure out where we would benefit from using TypeScript.

This is what the controller JavaScript file looked like to start out with:
(function () { 'use strict'; angular .module('app') …

Converting a Large AngularJS Application to TypeScript Part 2

In part 1 I was able to take an Angular controller written in JavaScript and convert it to a TypeScript file while doing very little to change the code. In this post I am going to explore transitioning that same controller to actually use the features provided in TypeScript. This is how I left off my controller:
declare var angular: any; (function () { 'use strict'; var controller: any = function($scope){ ... } angular .module('app') .controller('controller', controller); controller.$inject = ["$scope"]; })();
While performing the translation from JavaScript to TypeScript, I would make sure at every step that the functionality I expected still worked, so if anything I did broke the system I would change it back and try again with another approach. Also if something seemed like it worked too easily, I would break it on purpose to make sure I wasn't getting a false result through browser caching a previously working fil…

Gamify TDD

I like it when things that would not normally be associated with games add concepts from games as a way to incentives you to accomplish things. Why simply go for a run if you can have an app that will track you and give you a gold star if you do better than you did the last time? Why go to the coffee shop that only gives you coffee if the other one will give you points that you can redeem for free drinks eventually?

I was recently introduced to CodeSchool, an online training system similar to PluralSight, it has video courses and challenges you can take to prove that you retained what the video taught. CodeSchool also adds badges and tracks to your learning, so as you complete a video and its challenges you get a badge. Complete a collection of courses within a specific discipline and you become a master of that discipline.

Some of these incentives are not tangible and really don't mean much in the real world, but they tend to work for me. If I start working towards a large goal a…