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.

AppGameKit Studio Chat / [SOLVED] zip files

Author
Message
TamBam
12
Years of Service
User Offline
Joined: 29th Nov 2011
Location: India
Posted: 30th Jun 2021 17:43 Edited at: 30th Jun 2021 17:48
This post has been marked by the post author as the answer.
I make games for PC and I don't want that any one can use my game assets . so is their any method to create password protect zip files within app game kit ?
or I have to create from outside and put into media folder ?

The author of this post has marked a post as an answer.

Go to answer

Loktofeit
AGK Developer
15
Years of Service
User Offline
Joined: 21st Jan 2009
Location: Sarasota, FL
Posted: 30th Jun 2021 21:24
If companies like Blizzard and Bethesda aren't worried about their assets being accessible, you probably don't have to worry about yours.

The likelihood of your graphics being stolen and used in another commercial game are slim to none. If you do hit the lottery and cross paths with that one person that doesn't realize it's cheaper, safer, and more efficient to just buy premade assets. Then a simple CnD solves that problem instantly.
LynxJSA's web games/quizzes - LynxJSA's Android apps
AGK Resource Directory
"Stick to a single main loop (DO...LOOP) and loop through it every frame.
Do everything inside functions.
Use finite state machines to control your game.
Use lots and lots of source files.
jd_zoo
5
Years of Service
User Offline
Joined: 12th May 2018
Location: Nova Scotia
Posted: 30th Jun 2021 23:02
You can read password protected zips, but the function for creating a zip from inside AppGameKit does not have a password option.

https://www.appgamekit.com/documentation/Reference/File.htm

If you purchase assets for your program then I feel there is bit of an obligation on you to protect the artist's work. A password protected zip is an easy way to do it.
Loktofeit
AGK Developer
15
Years of Service
User Offline
Joined: 21st Jan 2009
Location: Sarasota, FL
Posted: 1st Jul 2021 00:16 Edited at: 1st Jul 2021 00:36
jd_zoo wrote: "If you purchase assets for your program then I feel there is bit of an obligation on you to protect the artist's work. "


None whatsoever, unless specifically stated in the agreement. Ex: TurboSquid



EDIT: For clarity, although that should be obvious.
LynxJSA's web games/quizzes - LynxJSA's Android apps
AGK Resource Directory
"Stick to a single main loop (DO...LOOP) and loop through it every frame.
Do everything inside functions.
Use finite state machines to control your game.
Use lots and lots of source files.
TamBam
12
Years of Service
User Offline
Joined: 29th Nov 2011
Location: India
Posted: 2nd Jul 2021 05:44
Thankyou to all . I have solved the problem .
Pfaber1
6
Years of Service
User Offline
Joined: 7th Jan 2018
Location: England
Posted: 10th Jul 2021 12:19 Edited at: 10th Jul 2021 12:45
sorry reposted moved to a new thread

Attachments

Login to view attachments
Pfaber1
6
Years of Service
User Offline
Joined: 7th Jan 2018
Location: England
Posted: 10th Jul 2021 12:34 Edited at: 10th Jul 2021 12:43
sorry reposted
Conjured Entertainment
AGK Developer
18
Years of Service
User Offline
Joined: 12th Sep 2005
Location: Nirvana
Posted: 10th Jul 2021 13:46 Edited at: 10th Jul 2021 14:31
Quote: "I make games for PC and I don't want that any one can use my game assets . so is their any method to create password protect zip files within app game kit ?
or I have to create from outside and put into media folder ?"

You could do like some other developers do and just change the file extension of the zip so the OS won't recognize it. (having your own file extension looks cool too)

That way, people will not know how to open the file to extract anything.

Of course, you would have to make a temp copy of the file to rename it back to a ZIP so you could then extract your stuff using the commands available to us.

I have not done this myself using AppGameKit, but I have been renaming file extensions for decades for a low level protection method.

I forget which thread it was here (years ago) that I exposed one of the big game engines using this method of renaming the file extension of ZIPs, but it is an easy method used by even big companies.

I say low level protection, because old school hackers will try changing unknown file extensions to popular ones just to see if this trick is being used. (zip is a common one to change)

It will thwart most people from getting direct access to your files though. (old school hackers will get to it regardless anyway)

-------------------------------------------------

Another method for protecting files like image files or atlases would be to convert to memblock --> load in array --> scramble with an algorithm --> then convert back to the image. (don't scramble the header of file size dimensions etc.)

That will scramble the pixel information and make the image unusable so you won't need to hide it, but you would have to reverse the process when loading into your game though to de-scramble it. (processing toll)


Quote: "Thank you to all . I have solved the problem ."

Cool

Just thought I would add a thought in case others who find this thread later could use the idea.


Quote: "None whatsoever, unless specifically stated in the agreement. Ex: TurboSquid"

Yeah

The 'Royalty Free' models at CGTrader have restrictions ... "Product may not be sold, given, or assigned to another person or entity in the form it is downloaded from the Site or in 3D printed physical form."

So, I will argue that converting the file from OBJ to MS3D or X etc. is changing the 'form' that is was downloaded as much as changing to other file formats like protected zips.

Not sure why those sites have so many rules on models that are FREE to download and allow commercial use.

It seems like saying something simple like ... "must be redistributed as a game or project asset, not individually".... would be enough, since it is freely available to anyone in the first place.

The funny thing with them is that you are not supposed to reverse engineer the model according to one of their other rules, which makes it seem impossible to change the form without reverse engineering it.

So, I am pretty sure they would have difficulty in enforcing all of their requirements when they contradict each other.

Not sure what their legal argument would be for monetary loss on something they are giving away for free. (I have downloaded some free stuff from there)

Quote: "EDIT: For clarity, although that should be obvious. "

Agreed

Any attempt to protect the assets seems reasonable.

That is why I prefer to use my own stuff (knowing they are less than great), because I don't have to worry about protecting it from people who will access it anyway seeing the protection as a challenge.

Coding things my way since 1981 -- Currently using AppGameKit V2 Tier 1
TamBam
12
Years of Service
User Offline
Joined: 29th Nov 2011
Location: India
Posted: 10th Jul 2021 19:20
@Conjured Thankyou very much .

protecting files like image files or atlases would be to convert to memblock --> load in array --> scramble with an algorithm --> then convert back to the image
I will try this tomorrow . I think it will more protect and even no one could understand what is it [ and It will just take some extra loading time I think, else everything remain same . ]
Thankyou once again .
Conjured Entertainment
AGK Developer
18
Years of Service
User Offline
Joined: 12th Sep 2005
Location: Nirvana
Posted: 11th Jul 2021 01:51 Edited at: 11th Jul 2021 02:23
Quote: "@Conjured Thank you very much .

protecting files like image files or atlases would be to convert to memblock --> load in array --> scramble with an algorithm --> then convert back to the image
I will try this tomorrow . I think it will more protect and even no one could understand what is it [ and It will just take some extra loading time I think, else everything remain same . ]
Thank you once again . "

No problem.

Glad I could help.

Just remember to leave that header data for the sizes, but the documentation on CreateMemblockFromImage() explains that very well.

It is only the raw image data you want to scramble.

it says the atlas sub images are not supported, but changing the entire atlas is certainly doable.

Quote: "...even no one could understand what is it"

Exactly... offers many uses other than protecting game assets.

The example in the documentation uses a JPG.

It has been awhile since I played around with converting images with memblocks but I am pretty sure I used PNG format.

I prefer PNG over JPG for images in general because of the dithering issues with JPGs.

Have Fun!

Coding things my way since 1981 -- Currently using AppGameKit V2 Tier 1

Login to post a reply

Server time is: 2024-04-23 16:40:30
Your offset time is: 2024-04-23 16:40:30