Starting up on Löwe

General discussion about LÖVE, Lua, game development, puns, and unicorns.
adge
Citizen
Posts: 54
Joined: Mon Dec 14, 2015 8:50 pm

Starting up on Löwe

Post by adge »

Hi there!

I'm totally new to Löwe. Just found out about Love2d a few days ago and I'm shocked how simple, fast and flexible it seems. Loading it up, coding something and making a executable file is super easy!

However I'm a bit curious why Löwe has never been used for bigger projects. I'm not talking about Crysis but something like this:

Rain World:
https://www.kickstarter.com/projects/ra ... ld?lang=de

Radio The universe:
https://www.kickstarter.com/projects/15 ... -0?lang=de

TowerClimb:
http://store.steampowered.com/app/396640/

I mean it seems super great. The level of abstraction makes everything super easy and Lua is I think the most easiest language to learn but at the same time it seems you could do anything you could imagine in a 2D sense. I worked a lot with GameMaker, well rather messed with GameMaker and really got bored by its bugs and lack of control. Moreover with GameMaker comes a lot of simplicity but also a lot of overhead I think. Furthermore GameMaker's OS X "Compiler" seems totally crappy since very light Projects sucked up 90% of a single CPU's core power. Is there something I don't know? I don't want to spend time on something which wouldn't allow me to go bigger. I somewhere heard that Moai is also a great alternative.
I'm aware of that most Projects are limited by one's own creativity instead by the Framework used. I just want to know why Love2d isn't used more. Is it just the lack of mobile support? Or do people tend to use Unity because of the level editor? But there are also people who use Cocos2d, XNA which also do not have level editors. Or are there problems with the performance on lager Projects.
I also heard that Love2d is great for Prototyping some rough ideas. But why would someone switch to a different engine after prototyping. Is Lua not capable of more complex structures or what's the deal?
User avatar
zorg
Party member
Posts: 3444
Joined: Thu Dec 13, 2012 2:55 pm
Location: Absurdistan, Hungary
Contact:

Re: Starting up on Löwe

Post by zorg »

Hi and welcome!

Bulletpoints! :3
  • Technically, i know of at least one project that could be viewed as a "bigger" one, in that it is commercial: Wanderer
  • Löve is not a lion might not be that "mature" in the sense that other frameworks were around for more time, or they just have bigger userbases or more visibility, i don't really know to be honest.
  • Löve's perfectly capable of doing larger projects, and even if you take your game to the limits with lua, löve uses luaJIT, a just-in-time compiler, which gives a few more bonuses apart from just faster lua code execution, namely the power to write C code for sections that may be slow with lua, though this is a bit more advanced stuff :)
  • As for why some people tend to leave smaller frameworks, maybe they want some functionality that one simply doesn't provide. One thing comes into my mind, and that is that löve by default can only access two places on a computer (save folder, directory containing main.lua OR the love file itself), but since lua's own io lib still exists, i'm not that salty about this ^^
  • The next release of löve will have Android and iPhone as usable platforms too! (official that is; they already existed for a while)
  • Finally, you are right that most Projects are limited by one's own creativity instead by the Framework used. I mean, undertale was made in GameMaker after all.
Me and my stuff :3True Neutral Aspirant. Why, yes, i do indeed enjoy sarcastically correcting others when they make the most blatant of spelling mistakes. No bullying or trolling the innocent tho.
User avatar
kikito
Inner party member
Posts: 3153
Joined: Sat Oct 03, 2009 5:22 pm
Location: Madrid, Spain
Contact:

Re: Starting up on Löwe

Post by kikito »

adge wrote:I also heard that Love2d is great for Prototyping some rough ideas. But why would someone switch to a different engine after prototyping. Is Lua not capable of more complex structures or what's the deal?
I would say that LÖVE is especially good in prototyping. There is very little overhead, you define two functions in a main.lua file and that's it. In Unity or Unreal there are lots of questions which are answered by the engine: "how do I load my resources dynamically?", "how do I partition space and check for collisions?", "how do I make animations?".

Complex projects can benefit from those extra framework structures. In LÖVE, you will have to "make it yourself" (or hunt for libraries) more often. The "kitchen sink" engines like Unity & Co give you a lot, but the downside is that they have a steep learning curve, and a lot more files, so much that you pretty much need a specialized IDE just to deal with all that complexity.

That said, LÖVE is good at complex projects too; It's just not brilliant.

Another "argument", I have heard is not technical; some people feel that since in LÖVE anyone can read the source code by using unzip, they don't want to make a big complex project and have the source code too easily available for others. I think that is a different issue, but I'd rather not have this post derailed into the "open-source vs closed-source flamewar".
When I write def I mean function.
User avatar
Fenrir
Party member
Posts: 222
Joined: Wed Nov 27, 2013 9:44 am
Contact:

Re: Starting up on Löwe

Post by Fenrir »

I totally agree with kikito, löve won't limit you at all for big projects (in terms of performances luajit is really impressive for instance), but you'll definitely need more "background" work and organisation to achieve it. As it has been said, it's not editor driven like Unity or GameMaker and when dealing with collisions for instance you'll need to create or find a good library fitting your needs.

On my side I choose to work with löve for Wanderer as I've always been more comfortable with the "make it yourself", I prefer having my own dedicated editor for the game and be totally free in its architecture, using my own scenegraph and component system. On top of that I'm really a big fan of Lua and its flexibility as it allows me to work really quickly, and I'm not dependent of any IDE with löve, just a text editor and we're good to go. Not to mention that there's also a lot of really great libraries that I'm really glad to use.

And from my past experiences, I also really prefer working with open source technologies, each time I worked with "black boxes", I got quite some bad surprises at some point. At least I know that with löve, whatever happens I'll be able to keep working on my game and modify myself the engine if needed.

Why isn't it more broadly used? Maybe partially the lack of editor as it's currently the trend, but mostly the lack of mobile versions so far I think.
bobbyjones
Party member
Posts: 730
Joined: Sat Apr 26, 2014 7:46 pm

Re: Starting up on Löwe

Post by bobbyjones »

Well on the part of commercial projects there are many commercial projects. For example BinaryCocoa has released multiple commercial projects using love and about to release their first onto steam, Collider. Binarycococa.com (or .org lol)
adge
Citizen
Posts: 54
Joined: Mon Dec 14, 2015 8:50 pm

Re: Starting up on Löwe

Post by adge »

Thanks a lot for the fast and helpful replies. They helped a lot.

Well I can see that it's a problem for some people to release their source code. Not really a matter for me because I don't think I will ever publish something. Well, never say never. Is there absolutely no way to "protect" your source after "compilation"?
User avatar
zorg
Party member
Posts: 3444
Joined: Thu Dec 13, 2012 2:55 pm
Location: Absurdistan, Hungary
Contact:

Re: Starting up on Löwe

Post by zorg »

There is, by choosing a license that doesn't allow people to use it.
Me and my stuff :3True Neutral Aspirant. Why, yes, i do indeed enjoy sarcastically correcting others when they make the most blatant of spelling mistakes. No bullying or trolling the innocent tho.
bobbyjones
Party member
Posts: 730
Joined: Sat Apr 26, 2014 7:46 pm

Re: Starting up on Löwe

Post by bobbyjones »

I would like to add that most people source code in commercial projects are so ugly that it would take ore effort to effectively use that code than to just start their own.
User avatar
slime
Solid Snayke
Posts: 3132
Joined: Mon Aug 23, 2010 6:45 am
Location: Nova Scotia, Canada
Contact:

Re: Starting up on Löwe

Post by slime »

If you really want to make your source code harder to read, there are ways to do that (e.g. compiling it to bytecode with LuaJIT).

But it's not very useful. Copyright is what actually protects your code legally, and obfuscating code won't prevent piracy and might make it harder to debug actual problems while only making some theoretical problems less likely.

Game code is also generally very game-specific and not very useful outside of the context of that game - assuming it's easy to understand and use in the first place, which is rarely the case, as BobbyJones says.
User avatar
giantofbabil
Prole
Posts: 32
Joined: Tue Dec 15, 2015 6:07 pm

Re: Starting up on Löwe

Post by giantofbabil »

zorg wrote:There is, by choosing a license that doesn't allow people to use it.
I would add to this that if you are releasing a commercial game you should definitely register your copyright, otherwise you can't sue for infringement. But in reality if you make a game and it becomes successful people WILL pirate it. This isn't necessarily bad though because people who pirate your game wouldn't have paid for it anyway but they may still spread a good word about your game.

As for the OP's question there's absolutely no reason that you can't have a commercial game in Love2D. The project I'm working on right now is intended to be a commercial project. It's a little too early right now to show anything off as I'm still in the early stages but I do plan on sharing some stuff here on the forums earlier than other places when it's ready.

As for obfuscating or encrypting code I think it's pointless. The kind of people that want to pirate your game will find a way around this and like I said above they wouldn't have paid for it anyway. There's nothing with Steam or any websites that I know of that says your work has to obfuscated/encrypted either. I also would love to help other developers who play my game and allow modding so I figure why not just leave the code open?

Code: Select all

if enemy == lowerClassSaiyan and powerLevel > 9000 then
    love.graphics.print("What?! 9000?! There's no way that could be right!", 10, 200)
else
    love.graphics.print("You fool!", 10, 200)
end
Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot], Bing [Bot] and 242 guests