Hi all,
Just found my way here last night. I was flipping through tigsource forum looking for a framework to use for a quick cross-platform project. I found LOVE and I think I might stick around for a bit longer than I planned! Fantastic work guys.
Now, on to code protection. I see there is a lot of chatter about this, rightfully so I say. It seems to me one of the main objections to supporting bytecode compiled lua scripts is that they're not cross-platform compatible. I don't understand this argument. If I plan to distribute a game outside of the LOVE community I will create a standalone package, which is already platform dependent. As is I will already have to provide different copies for each platform. So then what is the big deal if the bytecode is not cross-platform?
LOVE and bytecode
Forum rules
Before you make a thread asking for help, read this.
Before you make a thread asking for help, read this.
- Robin
- The Omniscient
- Posts: 6506
- Joined: Fri Feb 20, 2009 4:29 pm
- Location: The Netherlands
- Contact:
Re: LOVE and bytecode
Not really. Us people on Linux can still runDafu wrote:If I plan to distribute a game outside of the LOVE community I will create a standalone package, which is already platform dependent.
Code: Select all
love yourgame.exe
It is actually part of the problem. There are actually multiple problems with bytecode, and it's important to realise the LÖVE forums are filled with people who are used to seeing source code. I'm sure someone else can explain this better than me.Dafu wrote:So then what is the big deal if the bytecode is not cross-platform?
Help us help you: attach a .love.
- BlackBulletIV
- Inner party member
- Posts: 1261
- Joined: Wed Dec 29, 2010 8:19 pm
- Location: Queensland, Australia
- Contact:
Re: LOVE and bytecode
I've done a bit of research on code protection. One way is to use luac (Lua compiler) on your source code, which will compile the code into byte code. Unfortunately this protection isn't strong, and could be pretty easily decompiled. Plus as stated by this wiki article, luac comes with a whole lot of technical strings attached, so you're bound to run into problems.
Something that will give you more protection is merging your .love into an executable. This is described in the Game Distribution wiki article. But basically the most secure way I know of is to make a copy of the love executable (love.exe, love.app, or just love) and then, do this for Windows:
this for Mac:
and then rename love.app to game.app or whatever you want. Just be sure to rename the executable when you rename the application. Then edit the .plist file and adjust the settings needed. And finally for Linux:
Now, people will still be able to get to your code if they try, but this will make it harder. That's where you'll need a good license so you can sue them to world's end if they pirate it or something.
Anyway, good luck making games in Love!
Something that will give you more protection is merging your .love into an executable. This is described in the Game Distribution wiki article. But basically the most secure way I know of is to make a copy of the love executable (love.exe, love.app, or just love) and then, do this for Windows:
Code: Select all
copy /b love.exe+game.love game.exe
Code: Select all
cat love.app/Contents/MacOS/love game.love > love.app/Contents/MacOS/game
Code: Select all
cat love game.love > game
Anyway, good luck making games in Love!
- Robin
- The Omniscient
- Posts: 6506
- Joined: Fri Feb 20, 2009 4:29 pm
- Location: The Netherlands
- Contact:
Re: LOVE and bytecode
It bugs me when people talk about "code protection" like it's a real thing.
Help us help you: attach a .love.
- tentus
- Inner party member
- Posts: 1060
- Joined: Sun Oct 31, 2010 7:56 pm
- Location: Appalachia
- Contact:
Re: LOVE and bytecode
It's a facet of the programming industry that has millions of dollars spent on it every year. How is it not a real thing? People care about it a lot, even if it's something of a pipe dream.Robin wrote:It bugs me when people talk about "code protection" like it's a real thing.
Or were you trolling? It's hard to tell without inflection to give me a tone of voice to interpret.
Kurosuke needs beta testers
Re: LOVE and bytecode
It absolutely is a "real" thing. Yes we all know that in the end some tool somewhere can take your byte code and spit out something legible, and even if that wasn't the case, in the end you can break out your asm debugger. But there is a big difference between bytecode that could be reverse engineered, and open source. For some its a technical challenge, for most it would be a road block not worth their time. Offering no code security because there is no such thing as perfect security is a poor excuse.
- Robin
- The Omniscient
- Posts: 6506
- Joined: Fri Feb 20, 2009 4:29 pm
- Location: The Netherlands
- Contact:
Re: LOVE and bytecode
Not trolling, just a little frustrated about people who just don't get it. (This is not related to games or programming at all, this about your mindset, about life. If you live like that, you spend most of the time you could have spent on doing what you want to do on making sure others can't.)tentus wrote:Or were you trolling? It's hard to tell without inflection to give me a tone of voice to interpret.
It's not about that. Who is going to "steal" your code? What do you lose if they do?Dafu wrote:It absolutely is a "real" thing. (…) Offering no code security because there is no such thing as perfect security is a poor excuse.
I come across this sentiment in other creative disciplines, such as writing, as well. It is a bit distressing to see people try to think like a short-sighted commercial institution rather than as a person.
I'm not saying you should open-source everything you publish, if you want restrictive terms that's fine, but please distribute it with source. It's easier, more reliable and will probably help rather than harm you.
Help us help you: attach a .love.
- tentus
- Inner party member
- Posts: 1060
- Joined: Sun Oct 31, 2010 7:56 pm
- Location: Appalachia
- Contact:
Re: LOVE and bytecode
I'm sorry to say that you have misjudged me. My mindset is unusually inclined towards open source, I spend a great deal of my time publishing my work for free. I make a webcomic, I strive to make my open-source platformer more usable for others, I give free education lectures at my younger sister's college when I can. I honestly believe in open publication of information of all forms.Robin wrote:Not trolling, just a little frustrated about people who just don't get it. (This is not related to games or programming at all, this about your mindset, about life. If you live like that, you spend most of the time you could have spent on doing what you want to do on making sure others can't.)tentus wrote:Or were you trolling? It's hard to tell without inflection to give me a tone of voice to interpret.
That said, I'm not going to dismiss the effort that others spend on trying to "protect" their work. It's legitimate work for understandable reasons, even if you and I consider it misguided. Most importantly, it's their choice. None of us can claim that the others just don't get it, it's their choice to behave how they want.
Kurosuke needs beta testers
- bartbes
- Sex machine
- Posts: 4946
- Joined: Fri Aug 29, 2008 10:35 am
- Location: The Netherlands
- Contact:
Re: LOVE and bytecode
First, combining love with the game leaves behind a valid zip, so a good archiver can open it.
Second, as has been said before, closed source is not hidden source, and, open source can be commercial.
Second, as has been said before, closed source is not hidden source, and, open source can be commercial.
- BlackBulletIV
- Inner party member
- Posts: 1261
- Joined: Wed Dec 29, 2010 8:19 pm
- Location: Queensland, Australia
- Contact:
Re: LOVE and bytecode
Code protection is certainly a real thing. But many people spend far too much time on it. The time and money spent on it is prevent (although it usually still happens) the tiny minority who are more tech-enabled game players from getting at it.
As for piracy, you can't stop it. World of Goo (no DRM) has a 90% piracy rate (based on very average figures however, it's probably something like 60%), and Ricochet (DRM) has 92%.
I think that people shouldn't obsess over code protection, but I don't agree that people should publish the source; that's up to them.
As for piracy, you can't stop it. World of Goo (no DRM) has a 90% piracy rate (based on very average figures however, it's probably something like 60%), and Ricochet (DRM) has 92%.
I think that people shouldn't obsess over code protection, but I don't agree that people should publish the source; that's up to them.
I understand that, for Windows. But are you saying that on Mac and Linux combining the zip archive with the executable make a zip archive?bartbes wrote:First, combining love with the game leaves behind a valid zip, so a good archiver can open it.
I agree with that. But what good would it do to charge for an open source product? By definition, someone could just take your project and distribute it for free themselves. Or were you meaning just freely available source, restrictive license?bartbes wrote:Second, as has been said before, closed source is not hidden source, and, open source can be commercial.
Who is online
Users browsing this forum: No registered users and 3 guests