Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / [DarkGDK 2.0] how do i protect my files?

Author
Message
haliop
User Banned
Posted: 27th Jul 2012 11:36
like all images\textures 3d assets and whatever content that can be changed using simple painter or modelers?

how can i protect that from happening?



[URL] http://forum.thegamecreators.com/?m=forum_view&t=198467&b=22 [/URL]
Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 27th Jul 2012 16:43
Quote: "like all images\textures 3d assets and whatever content that can be changed using simple painter or modelers?"

Not easily. The easiest way would be to name them an extension different than their real extension( .X to .unq or something like that). Then in the game, go through and rename them back to the original extensions via a WinAPI call or something.

Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 27th Jul 2012 19:07
If dbCreateImageFromMemblock worked, you could pack all your images in a file full of memblocks and load them as a single file into your game. You could even do some encryption on the memblocks to keep it more secure. This file will be larger than all the images together because memblocked images are as bitmaps. If you knew some way to compress data like a zip, this would minimize the file size....

Even without dbCreateImageFromMemblock, you could save all your images the way I described and load them one at a time, sending the data to a bitmap and then capturing the image. This is a little time consuming, but not too bad if you don't have huge images or a bunch of them.

This is my method for making a bump image from a source image:

This procedure requires an image already exists. You should be able to modify it to simply take what's in the memblock and put it on the bitmap. And at the end, return the image number.

You will have to make sure you have a good bitmap created first:


The fastest code is the code never written.
WLGfx
16
Years of Service
User Offline
Joined: 1st Nov 2007
Location: NW United Kingdom
Posted: 27th Jul 2012 19:17
There's always a compression library like the opensource lzo code... You can use this to compress data blocks/memblocks/files/etc. And with a little extra code you can also encrypt too.

Mental arithmetic? Me? (That's for computers) I can't subtract a fart from a plate of beans!
Warning! May contain Nuts!
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 27th Jul 2012 19:48
Or you can be lazy [kind of] like me and use SPP it should work fine with GDK projects too...

haliop
User Banned
Posted: 28th Jul 2012 21:50
what about a file signature?
each file will have its unique sig and the app will check at startup if the sig matches the file sig then load it, if the sig dosent match the app will write something like Error loading files
then i dont have to worry about anything cause once modified the app will be unavaible..

still my files will be out for graps but atleast you wont be able to change them as you please therefor transforming the game into another..

what should i do what should i do ...hmmm

SPP looks great actually .. but it costs a bit much i will probably buy it but not now i cant now, therefor i am unable to release a demo fot the Tower Defense Game..

kinda sux.



[URL] http://forum.thegamecreators.com/?m=forum_view&t=198467&b=22 [/URL]
Olby
20
Years of Service
User Offline
Joined: 21st Aug 2003
Location:
Posted: 28th Jul 2012 23:29 Edited at: 28th Jul 2012 23:31
Quote: "therefor i am unable to release a demo fot the Tower Defense Game.."


If your game is great it will be pirated no matter how good is the protection. If your game is crappy there's no point in making advanced protection system- no one will give a damn about it anyway. So why bother.

To hide your media files you can use zip files or memblocks as Hawkblood mentioned.


Intel Core2Duo 2.2GHZ, 2GB, GeForce 8600M GT 1280MB, Windows Vista Ultimate SP2, PureBasic 4.61 + DarkGDK 2.0
haliop
User Banned
Posted: 29th Jul 2012 10:16
thats true. look all i want is to actually protect the files from being change , like the backdrop screen for example where it says created by (my name) i dont want someone to change it or the bullets images or anything else... i think i'll go for spp i'll get my pay check soon and see whats it all about , i plan on releasing a demo soon so just a few more days wont hurt



[URL] http://forum.thegamecreators.com/?m=forum_view&t=198467&b=22 [/URL]
Hawkblood
14
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 29th Jul 2012 15:44
Quote: "like the backdrop screen for example where it says created by (my name)"

That can be hard-coded into your game. It's a pain to do it, but you COULD do it. That way no one can change it without debugging you code (which is a pain itself).

The fastest code is the code never written.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 29th Jul 2012 22:20
haliop - There is a demo of SPP you can try it out

haliop
User Banned
Posted: 30th Jul 2012 03:08
i'll finish my demo version of Tower Defense then try the SPP trial
i dont want to use it now so i'll lose the days of the trial



[URL] http://forum.thegamecreators.com/?m=forum_view&t=198467&b=22 [/URL]
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 30th Jul 2012 05:26
No worries...

But I also do not think there is a limit to the sample trial...

But yeah it is good for packaging apps... But not very flexible...

Hassan
14
Years of Service
User Offline
Joined: 4th May 2009
Location: <script> alert(1); </script>
Posted: 31st Jul 2012 02:42
you are wasting time, better spend it on improving the game, you are also wasting money.

haliop
User Banned
Posted: 31st Jul 2012 02:45
i am not. this is a crutial for all game developers you dont want some one to get stuff you built for so long , and like in every hi-tech company , defense systems are an essintial , no matter how you look at it , security is not a waste of time.



[URL] http://forum.thegamecreators.com/?m=forum_view&t=198467&b=22 [/URL]
Mr Bigglesworth
16
Years of Service
User Offline
Joined: 4th Mar 2008
Location:
Posted: 31st Jul 2012 08:39 Edited at: 31st Jul 2012 08:39
Quote: "i am not. this is a crutial for all game developers you dont want some one to get stuff you built for so long , and like in every hi-tech company , defense systems are an essintial , no matter how you look at it , security is not a waste of time."


I am sorry to put it so bluntly, but your game won't be big enough or great enough for someone to want to do that. Unless you are making a AAA commercial game, there is no pont in wasting time and money in something that won't matter.

If you want to keep people from stealing your assets or changing them, use encrypted .zip files with zLib http://zlib.net/. It is free and easy to use. It took me less than 5 minutes to set up and get working.
haliop
User Banned
Posted: 31st Jul 2012 14:57
cool i will check it out.
and another thing this is not only for this game but for other projects aswell, and its a good thing to learn some protection.



[URL] http://forum.thegamecreators.com/?m=forum_view&t=198467&b=22 [/URL]
haliop
User Banned
Posted: 2nd Aug 2012 13:26
checked the zlib but im not a very skilled programmer it looks chinese to me..



[URL] http://forum.thegamecreators.com/?m=forum_view&t=198467&b=22 [/URL]
Mister Fuzzy
13
Years of Service
User Offline
Joined: 27th Feb 2011
Location: XNA
Posted: 10th Aug 2012 00:30
What I do is:

1) Pack the model into a memblock (Assuming that function is available in DGDK2.0, I only have 1.0).

2) Scramble the memblock data using a custom algorithm (using things such as MAC address or creation date makes a much stronger encryption, as a hack for one computer won't work for another).

3) Save the memblock as a file with a custom suffix (E.G. .gri, .dbm, et cetera).

4) Use the algorithm to UNscramble the memblock and create the model/image/sound from the memblock, deleting the memblock after the resource is successfully created.

For this method, you don't even have to include the original model data! However, if you intend to use computer-independent data such as the MAC address, you'll have to include an unscrambled version of your custom file, with a scrambler program that runs just after installation that uses the info to encrypt your precious files.

ALIEN(S)!!!!!!!!1!! (and sausages)
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 10th Aug 2012 01:42
Mister Fuzzy... If I understand you correctly... You are saying to use a MAC address to lock files and then only unlock them if the MAC address matches?

What happens if that MAC address device is disabled or even removed?

Mister Fuzzy
13
Years of Service
User Offline
Joined: 27th Feb 2011
Location: XNA
Posted: 10th Aug 2012 02:05
The encryption doesn't NEED a MAC address; I was simply using that as an example of what kind of values could be used for an encryption algorithm. I usually use a static number (something defined in the code) or a value written to the registry on install. Such values, however, are fairly easy to forge - That's why I'd recommend using something more concrete.

ALIEN(S)!!!!!!!!1!! (and sausages)
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 10th Aug 2012 09:03
MAC addresses are not concrete just wanted to point that out thats all...

Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 10th Aug 2012 17:08
Quote: "What happens if that MAC address device is disabled or even removed?"

Very very very angry customers. Do not use hardware IDs for DRM under any circumstances, it's a BAD idea.

MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 10th Aug 2012 17:18
My point precisely >_<

Dar13
15
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 10th Aug 2012 17:49
Quote: "My point precisely >_<"

Just wanted to clarify MrValentine, I know you said that.

MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 10th Aug 2012 18:02
Dar13

Mister Fuzzy
13
Years of Service
User Offline
Joined: 27th Feb 2011
Location: XNA
Posted: 10th Aug 2012 22:09 Edited at: 10th Aug 2012 22:11
Quote: "MAC addresses are not concrete "
Yeah, yeah. I usually code for Windows Phone: those MAC addresses are usually hard-coded into the firmware.

And on the off chance that a Windows Phone MAC address is changed (which is HIGHLY unlikely, unless some parts are replaced), a simple software resync fixes the whole issue.

It's been fun: So long, TGC!
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 10th Aug 2012 23:22
You can use GDK for WP?



3d point in space
14
Years of Service
User Offline
Joined: 30th Jun 2009
Location: Idaho
Posted: 11th Aug 2012 18:35
you can protect your game then your assists. MFC is a good choice to protect it. My protection algorithm is random letters and symbols that I pound in the keyboard.

Developer of Space Chips, pianobasic, zipzapzoom, and vet pinball apps. Developed the tiled map engine seen on the showcase. Veteran for the military.

Login to post a reply

Server time is: 2024-04-24 04:17:32
Your offset time is: 2024-04-24 04:17:32