LÖVE game distribution utility

Showcase your libraries, tools and other projects that help your fellow love users.
Post Reply
arekusanda1
Prole
Posts: 5
Joined: Sun Mar 24, 2013 9:33 pm

LÖVE game distribution utility

Post by arekusanda1 » Sun Mar 24, 2013 9:42 pm

Hi guys. I've recently started fiddling around this engine because I was searching a good engine for visual novel game and I can say I love this one a lot and I'm thinking of using it for a commercial project. While I was looking around I found out it needed a good distribution program, so I've decided to make one. If you have suggestions for improvement, please let me know. :D

Here is the google code page where you can download it. :D
https://code.google.com/p/love-dist/

This is a command-line tool, but IMO, a powerful one. :)

User avatar
slime
Solid Snayke
Posts: 2763
Joined: Mon Aug 23, 2010 6:45 am
Location: Nova Scotia, Canada
Contact:

Re: LÖVE game distribution utility

Post by slime » Sun Mar 24, 2013 10:07 pm

Luac is not portable between Lua versions or computer architectures. For example, code compiled with a 64 bit version of Lua 5.1's Luac won't work on 32 bit systems/versions of LÖVE, nor will it work with versions of LÖVE that use LuaJIT. Also, any speed increase would likely be very negligible.

User avatar
Hexenhammer
Party member
Posts: 175
Joined: Sun Feb 17, 2013 8:19 am

Re: LÖVE game distribution utility

Post by Hexenhammer » Sun Mar 24, 2013 11:31 pm

Thanks, I was thinking about making such a utility myself. However, could you add LuaJIT support? Because I want to bundle the LuaJIT version of LÖVE.

arekusanda1
Prole
Posts: 5
Joined: Sun Mar 24, 2013 9:33 pm

Re: LÖVE game distribution utility

Post by arekusanda1 » Mon Mar 25, 2013 8:44 pm

@slime
Portability isn't an issue here since there are also 2 versions of LÖVE game engine, x86 and x64. You would need to make slight changes to lovedist so that you can compile and use it on linux or MacOS (on which unfortunately I can't test). As for new versions of lua, it is enough just tu overwrite luac which comes with lovedist utility and you can use it for that version too. Main reason for using luac is so that you can hide your coding by compiling it to bytecode. It also automates the task which makes distribution way easier. :)

I will try to release a linux version soon.

@hexenhammer
I think I could bundle it with LuaJIT binary, but how do you plan on using it together with LÖVE engine?
I'm still new to LUA language so I don't see a method.

User avatar
Hexenhammer
Party member
Posts: 175
Joined: Sun Feb 17, 2013 8:19 am

Re: LÖVE game distribution utility

Post by Hexenhammer » Tue Mar 26, 2013 2:56 am

arekusanda1 wrote: @hexenhammer
I think I could bundle it with LuaJIT binary, but how do you plan on using it together with LÖVE engine?
I'm still new to LUA language so I don't see a method.
You can build LÖVE with LuaJIT instead of the official Lua interpreter. If you use such a build all your lua code will be executed by LuaJIT (and thus run faster). I guess (haven't tried it yet) your distribution utility automates the process of bundling the LÖVE executable with the .love file. To make a LuaJIT version of that you simply bundle a LÖVE executable built with LuaJIT with the .love file, instead of the official LÖVE executable.

arekusanda1
Prole
Posts: 5
Joined: Sun Mar 24, 2013 9:33 pm

Re: LÖVE game distribution utility

Post by arekusanda1 » Tue Mar 26, 2013 12:23 pm

Hexenhammer wrote:
arekusanda1 wrote: @hexenhammer
I think I could bundle it with LuaJIT binary, but how do you plan on using it together with LÖVE engine?
I'm still new to LUA language so I don't see a method.
You can build LÖVE with LuaJIT instead of the official Lua interpreter. If you use such a build all your lua code will be executed by LuaJIT (and thus run faster). I guess (haven't tried it yet) your distribution utility automates the process of bundling the LÖVE executable with the .love file. To make a LuaJIT version of that you simply bundle a LÖVE executable built with LuaJIT with the .love file, instead of the official LÖVE executable.
Yep. It just adds complete .love file on to LÖVE executable which is currently in the folder so it should be compatible with LuaJIT version too. :)

EDIT:
I've fixed a problem when using luac compiler to compile multiple .lua files which are stored in different folders in game folder. I've uploaded the updated version too.

EDIT2:
I've tried LuaJIT version LÖVE and it works, but only if files aren't compiled using luac, so don't use -c/-compile argument when making a distribution of luajit and it will be fine. :D

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 8 guests