#99567 - hello world - Tue Aug 22, 2006 1:11 pm
Hi, I am looking for a way to make my games incompatible with emulators. I have noticed that 2-in-1 carts manage to achieve this partially, only the first game runs (I have tested this legally with one of the games I own!) and I was wondering if anybody knows how this works.
#99571 - chishm - Tue Aug 22, 2006 2:12 pm
They use special bankswitching hardware which the emulator doesn't emulate. The problem with this is once the hardware is used enough, the emulator authors will add support for it in their emulators (eg, various save methods). Alternatively, if the hardware is not popular, it will cost more to mass produce.
_________________
http://chishm.drunkencoders.com
http://dldi.drunkencoders.com
#99610 - tepples - Tue Aug 22, 2006 6:05 pm
hello world wrote: |
Hi, I am looking for a way to make my games incompatible with emulators. |
Then how will casual PC users run them? Or how do you expect your games to become popular without the support of casual PC users? Do you intend to make your games something other than freeware? Are you willing to burn a cart after every build while developing and testing your game?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#99672 - gladius - Wed Aug 23, 2006 5:28 am
Modify the instruction currently in the pipeline. This isn't a foolproof method, but nearly all emulators out there get it wrong currently.
Example:
Code: |
u32 testEmu(); // returns 1 if running on an emulator
testEmu:
ldr r0, foo
str r0, 1f
1:
mov r0, #0
bx lr
foo:
mov r0, #1
|
#99688 - Spaceface - Wed Aug 23, 2006 9:13 am
I'm wondering why too? What art thou evil skemes?
#99762 - keldon - Wed Aug 23, 2006 8:34 pm
Maybe he wants to figure out how to play a game he downloaded.
#101416 - Henochius - Tue Sep 05, 2006 7:33 am
Sounds like a foolish thing to do, to introduce deliberate incompatibilities.
I'm surprised anyone here wants to help you to do such an evil thing.
#101418 - Dwedit - Tue Sep 05, 2006 9:26 am
I've seen tons of homebrew GBC roms which probe for an emulator, and refuse to run if one is detected. They also display a rather vulgar message, like "Emulators Suck", or "Piss off you all! No boy no demo".
_________________
"We are merely sprites that dance at the beck and call of our button pressing overlord."
#101425 - keldon - Tue Sep 05, 2006 11:55 am
And the point of that is ....
It is pointless. It reduces your audience tenfold.
#101426 - Optihut - Tue Sep 05, 2006 11:59 am
Dwedit wrote: |
I've seen tons of homebrew GBC roms which probe for an emulator, and refuse to run if one is detected. They also display a rather vulgar message, like "Emulators Suck", or "Piss off you all! No boy no demo". |
But who runs a file without seeing the source code on their hardware? Wouldn't people be reluctant to do that for fear of bricking? And if they do include the source, then it should be easy to take out that check.
#101430 - tepples - Tue Sep 05, 2006 1:35 pm
Dwedit wrote: |
I've seen tons of homebrew GBC roms which probe for an emulator, and refuse to run if one is detected. |
They do this by detecting emulation errors, especially timing errors. VisualBoyAdvance has lots of them; all you have to do is run the Toast decoder (as seen in GSM Player) for one frame and see that the CPU time is much shorter (on some versions) or longer (on other versions) than on a GBA.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#101506 - Ultima2876 - Wed Sep 06, 2006 2:06 am
I could offer an answer... anti-piracy?
#101507 - tepples - Wed Sep 06, 2006 2:10 am
Emulator-proofing does nothing for anti-piracy purposes. For one thing, you can still run a clean dump on a NOR flash card. For another, the warez release groups will just branch around your anti-piracy code while they insert their profanity-laced intro animations.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#101508 - sajiimori - Wed Sep 06, 2006 2:41 am
Tell that to all the publishers who go to great lengths to prevent piracy. I'm sure they'll thank you for showing them the light.
#101510 - gladius - Wed Sep 06, 2006 4:14 am
You just make the game subtly break (you need 13 keys to pass the level, but can only find 12, etc.) when the check is run, that way the pirates can't spot it right away, and it will take them a while to track it down and debug it. There was a great article on gamasutra about this a while back, although I'm too lazy to look it up.
It's all about making the barrier to entry to pirate the game as high as possible.
And to the people asking why you would want to do this. Why not? It's their software they are developing for fun. It's also instructive to see how the emulators fail to emulate the hardware properly.
#101514 - sajiimori - Wed Sep 06, 2006 5:27 am
Random memory leaks are also fun. Oops, didn't I free that file? Could have sworn I did. Oh well, hope you didn't want that 250 KB. Enjoy your 8.2 minutes of gameplay. XD
#101524 - Dwedit - Wed Sep 06, 2006 7:20 am
gladius wrote: |
You just make the game subtly break (you need 13 keys to pass the level, but can only find 12, etc.) when the check is run, that way the pirates can't spot it right away, and it will take them a while to track it down and debug it. There was a great article on gamasutra about this a while back, although I'm too lazy to look it up.
It's all about making the barrier to entry to pirate the game as high as possible.
And to the people asking why you would want to do this. Why not? It's their software they are developing for fun. It's also instructive to see how the emulators fail to emulate the hardware properly. |
Didn't megaman x do something like that?
_________________
"We are merely sprites that dance at the beck and call of our button pressing overlord."
#101659 - Ultima2876 - Thu Sep 07, 2006 2:07 am
@ tepples: Yes, but not everyone has a Flash Cart or similar - most pirates, you'll find, use emulators rather than dishing out for a flash cart because they really couldn't care less whether they were playing the game on hardware. Also, if you use a more complex means of protecting it than having a startup routine check for emulator, it'll be more difficult for them to "crack" it.
I can't go into details on my exact methods.
#101675 - keldon - Thu Sep 07, 2006 10:42 am
So what happens when the emulators catch up?
#101688 - tepples - Thu Sep 07, 2006 2:19 pm
Require exotic hardware on the cartridge that commits suicide when the battery dies, like Capcom's CPS-2.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#101697 - sgeos - Thu Sep 07, 2006 3:09 pm
Custom hardware. If the emulators catch up after your sales of a given game drop to zero, then you no longer really care.
-Brendan
#101771 - keldon - Fri Sep 08, 2006 12:07 am
tepples wrote: |
Require exotic hardware on the cartridge that commits suicide when the battery dies, like Capcom's CPS-2. |
Wouldn't the encryption on the ds carts count as 'exotic' hardware? The thing is that if your game really was popular and there was demand, the pirates could find a way. They've cracked practically every possible uncrackable package out there, including the hardware dongles. There are thing you can do, but why? What do you gain?
Pokemon was the most pirated game of all time, now look at its sales. Now you're going to remove that entire market of free gamers. Word of mouth is powerful, and who is to say whether some piracy is a good thing. I for sure know that I heard of pokemon first through emulation (long before it was out in the UK).
Of course if you're being paid to do it, then that's another story.
#101776 - tepples - Fri Sep 08, 2006 12:11 am
keldon wrote: |
tepples wrote: | Require exotic hardware on the cartridge that commits suicide when the battery dies, like Capcom's CPS-2. |
Wouldn't the encryption on the ds carts count as 'exotic' hardware? |
Not anymore. DS card encryption was flawed: break once, break everywhere.
Quote: |
The thing is that if your game really was popular and there was demand, the pirates could find a way. They've cracked practically every possible uncrackable package out there, including the hardware dongles. |
"Practically". Notice that CPS-2 still hasn't been fully cracked.
Quote: |
Pokemon was the most pirated game of all time, now look at its sales. Now you're going to remove that entire market of free gamers. Word of mouth is powerful |
So distribute a free limited demo. It worked for Doom by Id Software, and it's working for the games on DS Download Station.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#101779 - sgeos - Fri Sep 08, 2006 12:22 am
tepples wrote: |
keldon wrote: | The thing is that if your game really was popular and there was demand, the pirates could find a way. They've cracked practically every possible uncrackable package out there, including the hardware dongles. |
"Practically". Notice that CPS-2 still hasn't been fully cracked. |
Freaky. CPS-2 is old.
-Brendan