I am planning to make a small game in the near future. How can I minimize the chances of it being pirated?
-
61\$\begingroup\$ I can think of two ways of minimizing piracy. Make a bad game, or don't release it at all. Making good enough game that someone bothers to pirate it is an accomplishment in itself. \$\endgroup\$– Jari KomppaCommented Feb 19, 2011 at 15:35
-
3\$\begingroup\$ It will be pirated anyway, it doesn't matter what you will do to avoid that. Just don't give anything to crack/pay for and leave people having fun with your game. IMO it will be more appreciated and will spread faster \$\endgroup\$– BlackBearCommented Feb 19, 2011 at 18:22
-
8\$\begingroup\$ I don't mean to come across as stuck-up, but before you worry about people pirating your game, perhaps you should focus on building a game work pirating. :) \$\endgroup\$– Bob SomersCommented Feb 20, 2011 at 4:11
-
2\$\begingroup\$ Spend the time on making a better game, to reward the paying customers instead ^^ \$\endgroup\$– Oskar DuvebornCommented Feb 21, 2011 at 11:49
-
1\$\begingroup\$ Give it for free!!! \$\endgroup\$– djeidotCommented Dec 27, 2011 at 10:00
13 Answers
Make the distribution of your game as simple as possible and release frequent updates (with free new content)
eg. Angry Birds on the iPhone. Even if somebody pirates the game first, he might decide to buy it just because of the auto update function. (+ the new free content will give a feeling of getting much more for the money and that you are a decent developer)
On the PC I would use steam. It is great for small developers and the only distribution path more convenient than pirating.
Pricing is far less important in my opinion. A game for 9.99$ on steam will be bought far more often than one for 7$ on a private homepage.
And most importantly: don't focus on the pirates and potential losses. Concentrate instead on the paying customers, quality, and increasing the revenue.
-
\$\begingroup\$ +1 btw... can you explain what do you mean by Steam??? \$\endgroup\$– AyyappaCommented Feb 24, 2011 at 7:24
-
2
Copy protection is useless. Whatever you do, it will be cracked because your product will be in the hands of the bad guys. The only people you will be inconveniencing are the people who purchased your product (look at what happened to Spore).
Besides, pirates are usually the people that buy the most. The best you can do is make your product reasonably priced, don't piss off the consumer, make a good product, and make it accessible (steam, app stores, etc). Last one is very important. People pirate cause its hard or inconvenient to get it legitimately.
-
9\$\begingroup\$ I wholeheartedly agree, this is the answer. \$\endgroup\$– o0'.Commented Feb 19, 2011 at 11:46
-
11\$\begingroup\$ -1. Can't agree that copy protection is useless. There are a non-zero quantity of people who both buy games and who don't know about torrents or other illegal download sources. Note that the question is talking about minimising piracy, not eliminating it entirely. \$\endgroup\$– KylotanCommented Feb 19, 2011 at 19:54
-
2\$\begingroup\$ Reasonable pricing is the way forward. \$\endgroup\$ Commented Feb 19, 2011 at 23:46
-
4\$\begingroup\$ "pirates are usually the people that buy the most" - This comment makes no sense. By definition, a pirate doesn't pay for games. A non-pirate pays for games. Therefore it's impossible for a pirate to be considered someone who buys the most (ie, buys more games than a non-pirate). \$\endgroup\$ Commented Feb 21, 2011 at 23:29
-
2\$\begingroup\$ @Kylotan: nonsense. Giving inconveniences to legitimate customers just because that will help you sell a dozen more copies is a horrible business practice that will likely fall back to you in future. \$\endgroup\$– o0'.Commented Feb 10, 2012 at 8:35
Your game will be cracked, and it will be pirated. Having said that... Keeping the pirates at bay is an old article about an old game for an old system, but it still makes for interesting reading, and may give you some ideas to keep a game 'uncracked' for a little while.
This article also covers the basics of obfuscating function calls in c/c++.
-
5\$\begingroup\$ That was an extremely interesting article. \$\endgroup\$– DeadMGCommented Feb 19, 2011 at 18:27
Just to add two minor points to others' answers:
First, another reason why your game WILL be pirated is that pirates' resources are greater than yours. Maybe there are a dozen people trying to crack your game, for every one person on your dev team assigned to the task of "copy protection." You just cannot compete on man-hours.
Second, even professional big-budget AAA games get cracked, often within a week or two of release. For major titles, that may be worth the extra expense: an extra week of sales for a million-plus seller is big money, easy to justify spending a few tens of thousands -- not to keep pirates out for good, but to buy an extra few days of release sales. If your game is more modest in budget, and you don't expect to make the majority of your sales on release day, it's probably not a good use of your time from a pure cost/benefit analysis.
Third, remember that SOME people pirate because the company doesn't release a demo, and they're using this as a "try-before-you-buy" approach. It doesn't matter what you think of this practice ethically, but if you release a reasonable gameplay demo that serves this purpose, you will at least cut out one chunk of piracy.
-
5
As others have stated, once your game is out, it really does not matter if they have the source code or not; it will get cracked. However, you can do a lot to make sure it doesn't burn you.
The first recommendation I have is for you to make it easier to purchase/download the game than for a pirate to torrent and crack it. For example, steam makes it very easy for me to buy a game, so much so that it takes far less effort to buy a game than to crack it. Therefore, if you make your paying customers jump through hoops to play your game, by putting in some crazy DRM or registration system, you could be shooting yourself in the foot.
Another thing to consider is that you should not think about pirates as lost sales. These people may never have bought your game even if no crack existed. But more importantly, they may actually be helping spread the word about your game to people who may not even know about it. Their friends wont necessarily pirate the game. Also, some pirates may enjoy your game enough to actually consider buying it.
Here's my position on piracy and copy protection, from the standpoint of an end user:
- You can't eliminate piracy. Pirates will eventually defeat any anti-piracy feature included in any game. As such, the only situation where DRM will be effective is against casual users trying to make copies for the purpose of distribution to friends or otherwise, without the specific intention to crack a protection system.
- A corollary of this is that attempting to stop more complex attempts to illegally copy content is useless. Therefore, using advanced techniques beyond what is needed to prevent casual attempts to copy the content is wasted effort and is likely to interfere with the experience of legitimate users. A simple DRM system that only aims to block casual copying attempts is the most that can be considered useful. Alternatively, consider not including any DRM at all.
- Ensure that you do not disrupt the experience of legitimate users. This includes installing any low-level software for the purpose of implementing DRM, as this can interfere with the performance of users' computers. Doing so would only worsen piracy and decrease the perceived value of the game. Using only a simple DRM system, or not using one at all, can minimize disruption to legitimate users.
- If a non-genuine copy is detected, limit functionality to that of a demo, but do not interfere with play otherwise. Many games are designed to covertly disrupt gameplay, such as adding enemies that cannot be defeated, upon detecting that the game is non-genuine. While this can makes pirates less likely to attempt to crack the game, this can confuse users and cause frustration. Instead, notify the user that this copy of the game appears to be non-genuine and and limit functionality to that of a demo. Do not interfere with gameplay in the demo sections, and display a screen at the end of this content similar to that of a normal demo version of the game. This will reduce frustration by making it clear that the game is non-genuine and give players a chance to experience part of the game to encourage buying a genuine copy.
In any case, the best way to encourage purchases of genuine copies is to ensure that the value of the content justifies the cost of the game, both in terms of money and the amount of effort required to obtain a genuine copy. Piracy simply cannot be eliminated.
If you want to add some protection (so only the people who are willing to at least hit google a bit can get your game without paying you) make sure to make it fun.
Add optional community features which require internet or link it to physical goods.
Remember the nifty monkey island pirate wheel? A pirated copy was actually less fun (no pirate game) or more work (search the copied data) than a bought one.
An example: If your game should run offline (yes, I think it should), you could add a physical ID card which is needed to unlock the higher levels. On that you encode name and ID of the buyer over and over again to generate diffent data, a fraction of which the buyer has to type in when accessing the higher levels. This would work with an espionage game (the information could be a list of false IDs). Encoding the real information in the cards makes it less likely that people post their cards online. Once someone buys the game, you send him/her the card.
-
2\$\begingroup\$ Funny though, Whenever someone mentions copy protection the first thing I think of is that wheel :p \$\endgroup\$ Commented Feb 21, 2011 at 14:40
-
\$\begingroup\$ Okay, that sounds like a good plan but I want to be like release it and forget about it forever. \$\endgroup\$ Commented Feb 23, 2011 at 4:44
-
\$\begingroup\$ That is much harder: Any “protection” you add will be broken, if you don’t care for it. Either get someone to do the marketing for you, or add a public highscore with community features (sharing hints?) or so. \$\endgroup\$ Commented Aug 23, 2011 at 10:12
The most effective type of DRM is to make sure that at least one part of the game is not actually included with the installer and cannot be duplicated by pirates. For example, have all the maps be stored on a server which you maintain and downloaded when the user runs the game. You can make this somewhat more effective by making users sign in with a username and password before the game can download this content.
However, then the game won't run without an Internet connection and you have to maintain the server and pay for this bandwidth. In addition, even this can easily be defeated by a determined pirate.
In fact, almost all traditional DRM methods don't work. The best you could hope for is making it too inconvenient to pirate the game, so it's not worth the trouble.
There is a lot to be said for the honor system. Sure, you end up with some piracy, but there are plenty of businesses (GoG.com, Wolfire, 2DBoy, etc.) which have been very profitable without using any form of DRM.
-
1\$\begingroup\$ Let's clarify that: there is not a single encryption that cannot be cracked (or it just hasn't been found yet). The best you can hope for is to either keep the crackers disinterested or to give yourself a few weeks. \$\endgroup\$ Commented Feb 19, 2011 at 9:38
-
2\$\begingroup\$ Remember people who are determined to pirate your game will find a way around any DRM and probably find a way to remove it. DRM will only really affects legitimate users. \$\endgroup\$– JRTCommented Feb 19, 2011 at 11:42
-
4\$\begingroup\$ This is bullshit. Requiring to be online to play an offline game will greatly hurt legitimate customers, while pirates will be able to play it more comfortably once the hack will be ready (and, yes, even in this case it will eventually) \$\endgroup\$– o0'.Commented Feb 19, 2011 at 18:59
-
2\$\begingroup\$ Requiring an internet connection won't hurt customers if there is a real online component to the game (ex. MMOs). If you just randomly throw in a "download map data from server" step, then yes that will not usually go over well. Make it a value-add and you are in business. \$\endgroup\$ Commented Feb 21, 2011 at 4:42
-
3\$\begingroup\$ If your legitimate customers struggle with DRM and pirates enjoy a DRM free crack, something is horribly wrong, and it's not the pirates fault. Especially if said crack has to be used by a majority of the legit playerbase just to play. \$\endgroup\$– ExilythCommented Feb 28, 2012 at 8:25
Host it online.
No downloads, no pirates. Have you ever heard of somebody downloading a pirate copy of farmville? =)
-
1\$\begingroup\$ Farmville is free online, so no. But if they wanted to, they could download the .swf and change things around. However, the changes would probably only be local. \$\endgroup\$– DManCommented Feb 19, 2011 at 17:57
-
8\$\begingroup\$ World of Warcraft Pirate Servers . The most impressive part (to me) is that this private server, got over $3M in revenue from players... \$\endgroup\$– CyclopsCommented Feb 19, 2011 at 19:47
-
1\$\begingroup\$ @Cyclops: playing WoW in a pirate server is like not playing it at all. The amount of people playing in pirate servers is negligible compared to the people playing legit. \$\endgroup\$– o0'.Commented Feb 21, 2011 at 12:43
-
1\$\begingroup\$ @Lo'oris, people liked playing it enough to buy $3M of stuff... And my point anyway, was to disagree with your claim that "server-based games simply can't be pirated... people must connect to your server". The existence of WoW pirate servers shows this isn't really true. :) \$\endgroup\$– CyclopsCommented Feb 21, 2011 at 14:19
-
1\$\begingroup\$ We probably want to take a step back and define piracy really quickly, as it seems we're dealing with two slightly different definitions here. My point was more that if you have a highly social game, like an MMORPG or farmville, then people play for both the game and the community. Sure people can "pirate" the game and set up their own servers, but it's little more than a very advanced clone. What you can't do, or if you prefer to be pedantic, what 99%+ of people lack the technical skills to do, is connect to an official WoW server without a trial or having paid for the privilege to do so. \$\endgroup\$– KenCommented Feb 21, 2011 at 14:44
All can be pirated. Yet though you can stop a big amount of more newbie people using certain sofwtare like Asprotect or ExeCryptor. But keeping a glance on if it lowers too much performance, specially at initial load.
I recommend implementing AOE III's method of anti-piracy.
Part 1
(doesn't work!)
When you buy the game, they give you serial codes (the old school, serial codes). Obviously, only after you input the codes, you can play the game. Now, there's a problem with this method. The ever wretched crack. If you can crack it you can play it.
Part 2
(works!)
Now that the hacker cracked the game, they can play it, but only to a certain degree. You can't play online without having to re-input your serial codes to make a username & password. But here's the gist, it contacts the servers and checks if the serial code has been used yet!
If AOE III would have used "Part 2" from the beginning of installation, the problem would be solved! No playing the game without contacting the servers. This of course can be a slight problem to some players that don't have internet.
-
2\$\begingroup\$ installation or playing even with a protection like part 2 could be easily cracked : someone could rewrite some parts in exe file to make the game believe it has contacted servers. \$\endgroup\$– tigrouCommented Feb 10, 2012 at 8:07
-
1\$\begingroup\$ also about for part 2 : even a cracked game could be played online : just create a local network game (dont need to be online) and use VPN to make some kind of bridge between players (very easy to do). another way would be to re-implement microsoft AOE server protocol and use your own servers to play online (a lot harder i guess). so part 1 and part 2 can be defeated even with protection \$\endgroup\$– tigrouCommented Feb 10, 2012 at 8:16
If your a small company don't bother with DRM or copy protection, or if you do just make it a very token attempt.
While personally I don't agree with people calling DRM totally useless because it gets cracked (I do agree that all forms of DRM short of online streaming will be cracked). Financially DRM probably does make sense for large companies, just because those games do get cracked doesn't mean there isn't enough inconvertible to people who are not that competent when it comes to pirating (this can inhibit school yard/soccer mom piracy), or impatient to wait for a crack.
That horrible highly invasive always online DRM for example takes weeks or even months to get cracked as they encrypt the game content with various different keys requiring people to play through them inorder to unlock all the keys. For most major games a majority of their sales are likely to be right after release. Although I think companies selling that stuff should release a DRM removal patch after a few months of being released.
But a small/indie company doesn't have the same business model.
Firstly you require your customers to be happy (large companies don't, they own established brands that you can get elsewhere and they are the only ones that can afford to spend millions of dollars on making highend games). Small companies rely on word of mouth. DRM is bad PR, people hate it. It can only be a bad thing for a consumer (unless you buy into the idea that more games sold end up with games being cheaper as a result but I doubt companies pass on the savings, that charge what they can get away with as they always have). The customers who buy indie games are normally willing to pay to help small devs also tend to be very anti-drm. Form a bond with your community.
Secondly most indie games lack the massive hype that big AAA games can afford to buy. They will probably have a much flatter sales curve, it might start low and go up as word of mouth spreads or otherwise if you don't get word of mouth you will just get a somewhat constant rate of sales trickling along.
Thirdly you just don't have the resources to implement DRM. You either have to code in a hole bunch of copy protection things or pay for an off the self solution. If you do use some kind of DRM just make it the most basic version possible.
For a small game Piracy might actually boost sales. People will tend to pay more attention to something hitting a release site that one of the 10,000 $2 games for sale in some app store.
The best thing you can do to stop piracy is to add online services. Either post frequent updates online, that add new stuff not just fixing minor bugs. Require an online username/password linked to the game purchase/key to start the game (but preferably with some purpose other than requring the login). Add multiplayer, ensure that the server code verifys a game/useraccount is legit with a central authority server. Have a game browser (Gamespy style) that pull in the games from the server. Multiplayer will only help stop piracy if the multiplayer is a big focus of your game. Multiplayer can be cracked but it's generally going to have much less players and more cheats. Allow users to create game content/mods and share it with each other through some site/integrated ingame thing. You can host the servers yourself and ensure the client doesn't have the server code, this is what MMORPGs do, I wouldn't advise it for non 'massive' games.
Another thing you can do is sell through Steam. People love Steam. People love steam sales. You could also try getting into the next Humble Indie Bundle if you make it cross platform.
Sell your game cheap. People will buy a legit copy of a game if its only $5 (unless it looks really basic like a tetris clone), $10 if it seems like a fairly solid game (decent 3D graphics, gameplay, etc...). The problem is what people are willing to pay and what is worth it for the game developers don't necessarily line up but there will be a price point where people who would have pirated it or passed it over will buy, you might make more money selling for less.
Just accept piracy. There is a whole bunch of talk that if you make a really good game then people will buy it to support you rather than hitting a torrent site. Maybe that's true for a small % of the community but pirates don't go by how much they enjoy a game. I doubt Minecraft would have sold as well as it did if it wasn't for the online portion.
Create an online game where most of the game runs on the server.
To pirate your game, players need to create their own server. This means they either have to break into your network and steal your software or create a clone of your whole server software.
Both scenarios aren't that unlikely: They already happened to various companies.
About how to prevent server break-ins, consult http://security.stackexchange.com and http://serverfault.com
When there is a popular online game, there is often a project to clone the server. But such a project usually takes years before it can offer a game experience comparable to yours, so you have plenty of time to attack them legally or put more resources into developing your server than they can put into development of their clone, so you will always be ahead of them.
But please resist the temptation of doing it like a certain publisher cough EA cough and create a game which is actually completely client-sided and single-player, but got a pseudo server-component tagged on just so you can prevent piracy cough Sim City cough.
- your players will hate you, because it's obvious that the online features are only in your interest and not in theirs
- your server component won't be doing much, so the amateur coders won't take long to replicate its functionality