Allegro.cc - Online Community

Allegro.cc Forums » Game Design & Concepts » Making copy protection for a Shareware game

Credits go to Arthur Kalliokoski, BAF, Ceagon Xylas, Corelian, Derezo, Evert, Fladimir da Gorf, gnolam, Hard Rock, HardTranceFan, Jakub Wasilewski, kentl, Kitty Cat, LennyLen, Matthew Leverton, MiquelFire, Nils Fagerburg, OICW, Oscar Giner, Paul Pridham, piccolo, Richard Phipps, Sirocco, SpeeS3, Steve++, TeamTerradactyl, Tobias Dammers, Trezker, Victor Williams Stafusa da Silva, and wiseguy for helping out!
This thread is locked; no one can reply to it. rss feed Print
Making copy protection for a Shareware game
Sirocco
Member #88
April 2000
avatar

I'd have to say a major factor in classifying Daemon Tools and Starforce is that you get to install Daemon tools yourself, whereas Starforce is installed without asking, and without any sort of notification.

For the record, after playing Breed, which is a shitty game that uses Starforce, my copy of 98SE definitely went bonkers, and my optical drives started malfunctioning.

-->
Graphic file formats used to fascinate me, but now I find them rather satanic.

Jakub Wasilewski
Member #3,653
June 2003
avatar

Quote:

Quote:
What makes it a "rootkit" and what makes it different from the Daemon Tools driver is that Starforce is designed to do copyright protection

So basically Starforce is a rootkit because you don't like what it does.

See, there is the one thing you shouldn't do if you want to have a civilised discussion instead of building strawmen. You didn't even take a single sentence out of context, you chose to cut away the actual reason from the very same sentence, well done.

The point was the ring 3 to ring 0 privilege transfer, which was only possible because it was allowing running arbitrary code through its interface, which was part of the way their copy-protection works.

I don't have any beefs with copy-protection. However, I'm not fond of programs that silently install themselves in place of the drivers I used previously, and gloriously fuck up things so that I had to take half a day to bring things back to normal. Oh, and on top of that, leave my system wide open to all kinds of tampering. Woohoo.

I don't think I can clarify my opinion any more than that, so that will probably be my last post in the topic, unless some new points are brought up.

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

gnolam
Member #2,030
March 2002
avatar

I'm getting tired of arguing with Mr Fallacy, so I'll just post this and retire from this "discussion".

Quote:

I know for a fact all Ubisoft games here (Rainbow 6, Splinter Cell) tell you on the box that it's going to interfere with your virtual drives or what not and may not run on some cd/dvd drives.

Do tell us exactly where that's stated here:

{"name":"590416","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/e\/9e8d3604dcb6e0559be45c6016b136ed.jpg","w":480,"h":640,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/e\/9e8d3604dcb6e0559be45c6016b136ed"}590416
{"name":"590417","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/1\/d\/1d94a894d86e559b75965def850832bb.jpg","w":480,"h":640,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/1\/d\/1d94a894d86e559b75965def850832bb"}590417

Bonus points if you can find where it says it will INSTALL A GODDAMNED ROOTKIT.

[EDIT]
The A.cc line-eating bug is getting quite annoying.

--
Move to the Democratic People's Republic of Vivendi Universal (formerly known as Sweden) - officially democracy- and privacy-free since 2008-06-18!

Jakub Wasilewski
Member #3,653
June 2003
avatar

Hmm, you seem to have the beta version of the box. The actual retail one looks like this:

{"name":"590418","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/a\/ba6be96bcb53c7c0de5cbf7bbc9b9cc0.jpg","w":480,"h":640,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/b\/a\/ba6be96bcb53c7c0de5cbf7bbc9b9cc0"}590418

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

Victor Williams Stafusa da Silva
Member #4,212
January 2004
avatar

Ok, I didn't read all the posts, but my opinion is that shareware is dead and I think that this is good thing.

I know a case where the legit software (can't remeber the name, it was somewhere in 1993 or 1994) got so many twisted copy protection things that the user who had a legit copy prefered to obtain a pirated-cracked copy and use the pirated-cracked one because the copy protection were really annoying shit.

There were a case that the copy protection fucked with the operation system and caused malfunction in other programs too. So, original copy = virus, cracked copy = runs nice.

Why I would pay a lot of money in a legit copy of the game if i could pay almost nothing for a pirated copy of that? And why would i pay for a pirated copy if i could get one for free in P2P nets?

So where is the exit?
Be creative. Don't try to fuck your users with copy protection bullcrap. Give a personal compiled version to everyone who buys the game (and copy protect the customization, not the program). In case of MMO, you may distribute it freely and charge for playing on-line. Or sell magic items or whatever in that virtual world.
For not-net games, you may distribute it via e-mail to everyone who buys it (no need to ship the game nor burn CD's).

[The attack of the space bugs - Speedhack 2005] [Rambananas - Speedhack 2006] [Make clean - Speedhack 2009] [The source god - TINS 2010]

Evert
Member #794
November 2000
avatar

Quote:

Why I would pay a lot of money in a legit copy of the game if i could pay almost nothing for a pirated copy of that?

Because it's the decent thing to do to pay the people who spend time and energy in making the game?

Tobias Dammers
Member #2,604
August 2002
avatar

Quote:

Oh, and copright infringement == stealing in my opinion

The law doesn't agree. And I tend to share that opinion. I'm not saying that copyright infringement is OK and stealing is not. Far from that. The difference is that when you steal something, the legit owner has no way whatsoever to use the stolen item, while when you copy something, the legit copyright bearer still has his own copy - only that you have another copy. It is all but the same.
Both are wrong, though - but they're definitely two different things.
On the rootkit issue: Controlling what goes into a filesystem and back out of it is the sole business of the OS. Anything tampering with that is evil, unless I explicitly do it myself (by installing daemon tools for example). If I take my car to a garage, asking them to check the engine, and they f*** with the brakes, I'll go sue them.
On the original topic: Best choice IMO is no protection at all. Distribute a "light" version (with reduced features), and sell the full version at a reasonable price. With some luck, someone who has paid for the game won't spread copies, and less so if the price is actually "reasonable" - far below commercial titles, that is.
Other than that; a hardware-hash system with on-line registration seems to work OK; it can be cracked, but the effort is probably too much for a cheap game. Maybe take a look at the marketing scheme taleworlds (www.taleworlds.com) use for their game Mount & Blade. Their copy protection is a "passive" one, that is, it doesn't change much in your system, but rather only stores a serial number, which it checks against the hardware configuration at startup.

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

OICW
Member #4,069
November 2003
avatar

Back on topic of the shareware: a long time ago passed the days of games like Commander Keen or Doom, which I consider real shareware. Those were really the times of shareware.

But since then it died. Shareware is mostly used (when even) in normal applications and not games. The only game which could be considered shareware nowdays (as far as I know) is Defcon - though it's not shareware in the full meaning - you download a demo, pay a fee, get a key and voila you have full version.

Edit:
Tobias: and if somebody does it, you can still get your money, when somebody want's to put it to a CD collection.

[My website][CppReference][Pixelate][Allegators worldwide][Who's online]
"Final Fantasy XIV, I feel that anything I could say will be repeating myself, so I'm just gonna express my feelings with a strangled noise from the back of my throat. Graaarghhhh..." - Yahtzee
"Uhm... this is a.cc. Did you honestly think this thread WOULDN'T be derailed and ruined?" - BAF
"You can discuss it, you can dislike it, you can disagree with it, but that's all what you can do with it"

HardTranceFan
Member #7,317
June 2006
avatar

trezker said:

That's not what I said.
If I buy a car and can't open its door because the lock is too secure then I pay someone to crack it open and install a lock that I can use.

In your example here, you own the car. You purchased the car and they made alterations to it. You didn't buy the car with an easier locking system from the guys who cracked and installed the locks. Which is what you are doing in the case of buying pirated games.

You pay the pirates for a cracked and still working copy of the game. If your analogy with the car is to hold, you'd only pay the pirates for the progette that bypasses the legitimate version of the game you have. You wouldn't receive a cracked working copy of the game from them.

Like I said earlier, the pirates are leeches who profiteer from the hard work and long hours put in by others.

--
"Shame your mind don't shine like your possessions do" - Faithless (I want more part 1)

OICW
Member #4,069
November 2003
avatar

So if ever a pirated copy, only for free.

[My website][CppReference][Pixelate][Allegators worldwide][Who's online]
"Final Fantasy XIV, I feel that anything I could say will be repeating myself, so I'm just gonna express my feelings with a strangled noise from the back of my throat. Graaarghhhh..." - Yahtzee
"Uhm... this is a.cc. Did you honestly think this thread WOULDN'T be derailed and ruined?" - BAF
"You can discuss it, you can dislike it, you can disagree with it, but that's all what you can do with it"

Corelian
Member #3,376
March 2003
avatar

HardTranceFan said:

[quote trezker]
That's not what I said.
If I buy a car and can't open its door because the lock is too secure then I pay someone to crack it open and install a lock that I can use.

In your example here, you own the car. You purchased the car and they made alterations to it. You didn't buy the car with an easier locking system from the guys who cracked and installed the locks. Which is what you are doing in the case of buying pirated games.
</quote>
It's analoguous to the situation where you have purchased the game legally and obtain a crack that bypasses it's copy protection.

HardTranceFan
Member #7,317
June 2006
avatar

As per my second paragraph ;D

--
"Shame your mind don't shine like your possessions do" - Faithless (I want more part 1)

Corelian
Member #3,376
March 2003
avatar

Oh yeah, I missed that. :-/

Kitty Cat
Member #2,815
October 2002
avatar

Evert said:

Quote:

Why I would pay a lot of money in a legit copy of the game if i could pay almost nothing for a pirated copy of that?

Because it's the decent thing to do to pay the people who spend time and energy in making the game?

Exactly. I acquired a free copy of Oblivion, after hearing it had no copy protection. I wanted to try it out, see if it'd even run on any of the systems here, and see if I enjoyed it. And you know what? It ran, I enjoyed it, and now I own a legit copy.

So in fact, they gained a sale by not using copy protection.

--
"Do not meddle in the affairs of cats, for they are subtle and will pee on your computer." -- Bruce Graham

OICW
Member #4,069
November 2003
avatar

Kitty Cat: the only problem is, that there are not so many people like you out there.
I'm going tommorow to buy a copy of Homeworld 2, it's now cheap and I finaly have a hardware to run it. To this very day I have it only on a CD-R and I'm not happy about it - Relic really deserve money for what they put into this game.

[My website][CppReference][Pixelate][Allegators worldwide][Who's online]
"Final Fantasy XIV, I feel that anything I could say will be repeating myself, so I'm just gonna express my feelings with a strangled noise from the back of my throat. Graaarghhhh..." - Yahtzee
"Uhm... this is a.cc. Did you honestly think this thread WOULDN'T be derailed and ruined?" - BAF
"You can discuss it, you can dislike it, you can disagree with it, but that's all what you can do with it"

TeamTerradactyl
Member #7,733
September 2006
avatar

Everyone here is talking about the rootkits. What about the original question?

I have one idea that someone mentioned earlier but that I just wanted to re-emphasize:

1) Create a disabling feature on your full-feature game.
2) Prompt for the registration code
3) Don't test the registration code while the program is currently running! (A debugger could step through the memory and figure out the "check the given code against the correct hash" routines)
4) When they restart the program, do a check sometime in here that doesn't seem obvious (like, ask for user-input for mouse, keyboard, etc. and do the registration-check during that time)
5) If the code passes the hash BUT is considered a fake, delete a "needed" file in the game's current directory, or randomize its data so it can't be read. That guarantees that the program can't run.

You could do several of these "small, crippling" over a period of 3-4 "game restarts", so it's not completely obvious what's going on.

Anyway, my 2 cents...;D

Kikaru
Member #7,616
August 2006
avatar

Hmmm... sounds pretty good actually. I like a lot of these ideas. Lets go back to the point of the thread, maybe?

Derezo
Member #1,666
April 2001
avatar

Personally, I'm going the online route if I ever get a game worth buying out there. You need to login to play, can't login without a user name and password, can't get a user name and password without buying a subscription. ;D

Remember that legitimate users can make mistakes. You should test the md5 hash of the executable files and disrupt their play if they do not match, don't test against their registration code.

"He who controls the stuffing controls the Universe"

Kitty Cat
Member #2,815
October 2002
avatar

Quote:

Kitty Cat: the only problem is, that there are not so many people like you out there.

If someone wouldn't buy the game even though they liked it after trying it, did the company lose anything? They didn't lose any money since the person wouldn't have bought it anyway, and it cost the company nothing for him to get that copy.

--
"Do not meddle in the affairs of cats, for they are subtle and will pee on your computer." -- Bruce Graham

Victor Williams Stafusa da Silva
Member #4,212
January 2004
avatar

Evert said:

Because it's the decent thing to do to pay the people who spend time and energy in making the game?

For me and you maybe. But normally the users simply don't care about who make the game and how. They just want to run the game and screw up the rest of the world. So if they go choose if they will pay a expensive legit copy or if they will get a very cheap or even free pirated copy AND the pirated runs so well as the original does (or even better), so they will get the pirated, because no one really cares about the work the developers spent making it, they just want to get the software for the cheapiest price as they can (possibly for free).

This is why copy protection were implemented: to prevent that the pirated copy runs as well or better than the original one (or possibly simply did not run).

**********************************************************************************

There are also a geographic question in selling software. If the software is "US only" or "US/Canada only" or "north america and europe only" or "japan only" or "any non-worldwide region only", people outside these areas hardly will get a legit copies, and they probably will need to pirate these.

The places where geographic factors make piracy go high are places as:

1. North Korea and Cuba, due to being highly isolated politically and commercially, their software is 100% pirate.

2. Vietnam, Taiwan, China, Russia and arabian countries. International copyright laws don't have effect in those countries (and they benefit from that), so the piracy is high. There is no or very few support from developers, so they almost couldn't get legit copies even if they want.

3. Some african countries, latin-american countries. Although the inernational copyright affect these places, they are weak. The main cause of their weakness is the lack of support from the producers or inviability to sell legit software in these places (due to commercial protecionist barries, high taxes, economical instability, defective laws, etc.) Without (or with very few) support and with no chance or few chance to get legit copies, they tend to go in pirated ones.

[The attack of the space bugs - Speedhack 2005] [Rambananas - Speedhack 2006] [Make clean - Speedhack 2009] [The source god - TINS 2010]

BAF
Member #2,981
December 2002
avatar

Quote:

I'd think a good idea to way to keep the hackers away is to calculate a checksum for the exe, and if it fails, remove a cruicial item from the game which can only been encountered later in the game. The hacker thinks that he got it broken, but when the poor pirates run the game, they can never complete it...

Like Spyro? ;D

Tobias Dammers
Member #2,604
August 2002
avatar

Quote:

Exactly. I acquired a free copy of Oblivion, after hearing it had no copy protection. I wanted to try it out, see if it'd even run on any of the systems here, and see if I enjoyed it. And you know what? It ran, I enjoyed it, and now I own a legit copy.

So in fact, they gained a sale by not using copy protection.

Yes. But you have still violated the copyright.

The car analogy doesn't hold, though. If I "pirate" a car, the legit owner cannot use it any more. If I "pirate" software, the legit owner can use it just the same.
Pirating software is likely to hurt sales, while stealing cars may even have the opposite effect.

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

Kitty Cat
Member #2,815
October 2002
avatar

Quote:

Yes. But you have still violated the copyright.

Not saying I didn't. But the point was that they still got what I believed they deserved to get.

--
"Do not meddle in the affairs of cats, for they are subtle and will pee on your computer." -- Bruce Graham

OICW
Member #4,069
November 2003
avatar

I just want to say that there are still many people who will actually buy a game. So even if there will be pirated copies the company will still profit if the game is good enough (just waiting till somebody tells me that I'd speak different if running my own game company). But if you obtain a pirated copy from a friend nobody loses nothing as Kitty said, the only issue is that you violate a copyright and you have to live with that that you're using somebody's work without giving him reward for it.

That's why I have today bought Homeworld 2, I had a pirated copy, found out that it works so I bought it. I found on the box that it is not 100% compatible with integrated cards and notebooks, so I'm glad I had a full version to test. The only thing I hate about that copy is that it has been translated to czech. I wish you could see how they translated destroyer - not in the alternate meaning of a ship but in the meaning of 'destructor'. And they proudly call it "Professional Czech version", ahem...

[My website][CppReference][Pixelate][Allegators worldwide][Who's online]
"Final Fantasy XIV, I feel that anything I could say will be repeating myself, so I'm just gonna express my feelings with a strangled noise from the back of my throat. Graaarghhhh..." - Yahtzee
"Uhm... this is a.cc. Did you honestly think this thread WOULDN'T be derailed and ruined?" - BAF
"You can discuss it, you can dislike it, you can disagree with it, but that's all what you can do with it"

Kikaru
Member #7,616
August 2006
avatar

Wow, this thread is still going... this became more of a discussion than answering my question. :-/

Anyway, I am looking at how I should go about making copy protection, not the morality of breaking it. If anyone has anything else to add about making it, please state it. :)



Go to: