How could one post-process it so that the executable is not readable? I've looked around the internet, but I can't seem to find anything. Can anyone help me out?2. The resulting executable from the merge will still be readable by archiving software, such as WinZip.
How to Protect a Resulting .Exe?
Forum rules
Before you make a thread asking for help, read this.
Before you make a thread asking for help, read this.
- Puzzlem00n
- Party member
- Posts: 171
- Joined: Fri Apr 06, 2012 8:49 pm
- Contact:
How to Protect a Resulting .Exe?
Okay, I don't really need to know this, but it's something I think I'd like to know in the future if it comes up. It says here on the wiki for game distribution:
I LÖVE, therefore I am.
Re: How to Protect a Resulting .Exe?
... you could use a runtime compressor for your .exe-File.
Something like
http://upx.sourceforge.net/
Something like
http://upx.sourceforge.net/
- Puzzlem00n
- Party member
- Posts: 171
- Joined: Fri Apr 06, 2012 8:49 pm
- Contact:
Re: How to Protect a Resulting .Exe?
Thanks, but that doesn't exactly work. It seems I'd need to make sure the package can reference the required .dlls, which I'm not sure you can do.
Does anyone have any alternate solutions?
Does anyone have any alternate solutions?
I LÖVE, therefore I am.
- TechnoCat
- Inner party member
- Posts: 1611
- Joined: Thu Jul 30, 2009 12:31 am
- Location: Milwaukee, WI
- Contact:
Re: How to Protect a Resulting .Exe?
http://stackoverflow.com/a/6888667/1185957
Have fun spending all your time futilely protecting your code.
Have fun spending all your time futilely protecting your code.
- slime
- Solid Snayke
- Posts: 3166
- Joined: Mon Aug 23, 2010 6:45 am
- Location: Nova Scotia, Canada
- Contact:
Re: How to Protect a Resulting .Exe?
There is no perfect solution, not even for commercial games that use other languages. One way is to use luac to precompile your lua files, but compiled lua files are not compatible between architectures and Lua versions, so you have to be careful. Plus, regular compiled lua can easily be decompiled.
In most cases, hiding code is not worth the effort, especially because almost no one's code is worth anything on its own. Note that there is a difference between having an open-source license and having visible code - you can have visible code while still having a restrictive license that legally prevents people from using it wholesale.
In most cases, hiding code is not worth the effort, especially because almost no one's code is worth anything on its own. Note that there is a difference between having an open-source license and having visible code - you can have visible code while still having a restrictive license that legally prevents people from using it wholesale.
- TechnoCat
- Inner party member
- Posts: 1611
- Joined: Thu Jul 30, 2009 12:31 am
- Location: Milwaukee, WI
- Contact:
Re: How to Protect a Resulting .Exe?
To drive this home, it is like buying a book. The contents are clearly viewable. An obfuscated book would be retarded. However, it is illegal to copy the contents of the book.slime wrote:Note that there is a difference between having an open-source license and having visible code - you can have visible code while still having a restrictive license that legally prevents people from using it wholesale.
- Robin
- The Omniscient
- Posts: 6506
- Joined: Fri Feb 20, 2009 4:29 pm
- Location: The Netherlands
- Contact:
Re: How to Protect a Resulting .Exe?
Like TechnoCat said.
If you can read a book, you can copy the words as well, there's nothing a publisher can do about that technical possibility.
If you can run a program, you can copy the functionality as well, there's nothing a publisher can do about that technical possibility.
Or, the other way around: if WinZip can't take a look at how your game works, neither can LÖVE.
If you can read a book, you can copy the words as well, there's nothing a publisher can do about that technical possibility.
If you can run a program, you can copy the functionality as well, there's nothing a publisher can do about that technical possibility.
Or, the other way around: if WinZip can't take a look at how your game works, neither can LÖVE.
Help us help you: attach a .love.
Re: How to Protect a Resulting .Exe?
This link seems to go against everything which has been said in this thread (the second answer from stackoverflow especially). While it may be impossible to protect it 100% it seems easy enough to protect a program sufficiently to ensure that it would be easier to start from scratch than to try to decipher it. Whether one should do it or if it's worth the trouble is a completely different question IMO.TechnoCat wrote:http://stackoverflow.com/a/6888667/1185957
Have fun spending all your time futilely protecting your code.
- josefnpat
- Inner party member
- Posts: 955
- Joined: Wed Oct 05, 2011 1:36 am
- Location: your basement
- Contact:
Re: How to Protect a Resulting .Exe?
I love this post, but also see how for small time developers, it would be crazy to implement this.TechnoCat wrote:http://stackoverflow.com/a/6888667/1185957
Have fun spending all your time futilely protecting your code.
Missing Sentinel Software | Twitter
FORCIBLY IGNORED.
<leafo> when in doubt delete all of your code
<bartbes> git rm -r *
<bartbes> git commit -m "Fixed all bugs"
<bartbes> git push
FORCIBLY IGNORED.
<leafo> when in doubt delete all of your code
<bartbes> git rm -r *
<bartbes> git commit -m "Fixed all bugs"
<bartbes> git push
- bartbes
- Sex machine
- Posts: 4946
- Joined: Fri Aug 29, 2008 10:35 am
- Location: The Netherlands
- Contact:
Re: How to Protect a Resulting .Exe?
Java has similar problems, and they use obfuscation that basically changes all variable and function names so if you do manage to decompile it, it is quite hard to read. Though this works reasonably well, of course it isn't perfect (see minecraft).
The fundamental problem you come across when 'protecting' is that it has to be a) executable and b) decodable. Especially b is important, this means that for every lock, you need to ship its key too, the computer has to read it, after all.
The fundamental problem you come across when 'protecting' is that it has to be a) executable and b) decodable. Especially b is important, this means that for every lock, you need to ship its key too, the computer has to read it, after all.
Who is online
Users browsing this forum: No registered users and 5 guests