Mac OSX Latest Windows Latest Linux Latest. Download on the. (TestFlight) Android Latest (.APK) Mobile. The free website templates that are showcased here are open source, creative commons or totally free. These free CSS HTML templates can be freely downloaded. Use your smartphone, tablet, Amazon device or computer to listen to Audible audiobooks. Android Platform SDK for your targeted version of Android; Android SDK build-tools version 29.0.2 or higher; Android SDK Tools: In Android Studio 3.6 or later, you need to manually add the old version of the Android SDK Tools. To do this: Open the Android Studio SDK Manager; In the Android SDK Tools tab, uncheck Hide Obsolete Packages.
Once you have completed your game you surely want to make it available to others. In general you should first create a .love-file which can be either directly distributed (which requires users to have LÖVE installed) or used for platform specific packages.
These are the preferred ways to distribute your game depending on target (all make use of the .love file):
- Windows → Windows Executable
- macOS → macOS Application
- Linux → plain .love file, or Appimages
- 1Create a .love-file
- 1.1Platform Specific Notes
- 2Creating a Windows Executable
- 2.1Platform Specific Instructions
- 2.1.1Windows
- 2.1Platform Specific Instructions
- 3Creating a macOS Application
- 4Distribution for Linux
- 5Android
Create a .love-file
Please note that some operating systems use case-sensitive paths. To avoid unnecessary hassle make sure that the path specifications you use in code matches that of your folders and files.
To create a .love-file you have to create a zip file of the whole game directory. Make sure that your main.lua is in the root of the archive, e.g. if you have
then you must ensure the zip file contains
and not the directory SuperGame.
Once you have your zip file you simply rename the ending from .zip to .love and you are done!
If you're using a case-insensitive file system (e.g. Windows), it's advisable to move the .love file to some place other than the folder where your game is, and test again. This will reveal any case sensitivity problems that other users may run into when trying to run your game. If it's run in the same folder, it will find there the files that it can't find in the .love file, so you have to move it before testing. A good place to move it is a folder within your game directory, e.g. love/MyGame.love
.
Platform Specific Notes
Windows
Windows supports creation of zip files out of the box via right-click menu. For detailed instructions see Compress and uncompress files (zip files).
macOS
Inside the game folder, select the game files and folders, right-click/Ctrl+click and pick Compress n items. Then rename the resulting .zip
file to have a .love
ending.
Alternatively, you can use the terminal. Navigate inside the game folder and run:
Linux
Assuming your current directory is SuperGame/ you can create the .love file from command line directly using
Creating a Windows Executable
Once you have packed your game into a .love file you can create a game executable that directly runs your game.
For this you have to append your .love file to the love.exe file that comes with the official LÖVE .zip file. The resulting file is your game executable.
Once you have your game executable you can pack it together with all the other DLL files of the official LÖVE .zip file into a new .zip file and share this with the world.
Note: Some people do not have a 64-bit version of Windows, so it is a good idea to either distribute both 32- and 64-bit versions of your game, or only distribute a 32-bit version.
Platform Specific Instructions
Windows
To create your game executable under windows use the command line to run
Note Video editing powerdirector ipad. : You may have to run the command as an administrator on your computer. You can do this by going to WindowsSystem32 and right clicking on cmd.exe and selecting the option Run as administrator. After this, you must type cd C:Program FilesLOVE (or whatever your default love directory is), then you may continue as normal.
Alternatively you can create a .bat (e.g. create_game_exe.bat) file with the contents
and then you can simply drag your SuperGame.love file onto the .bat file and it will create the file SuperGame.love.exe which you could then use for distribution.
If you are using PowerShell instead of cmd, then the command used is a little bit different:
This method creates a fused game.
Windows iconYou can use your own icon images using tools like for example the freeware Resource Hacker.
Video tutorial and step-by-step instructions are available.
Linux / OS X
You can create the windows executable from Linux and OS X using the command line.
First download the official zipped 32 or 64 bit executable (not the installer) from https://www.love2d.org/. 32 bit games can run on 64bit Windows systems but not vice versa, so to save time on smaller games, you can provide 32bit only.
Then in the command line/terminal run
to obtain the game executable SuperGame.exe.
When distributing the windows executable you will need to include the dll files that came in the folder of the love.exe you used (so don't mix the 32 bit dll's with the 64 bit dll's). Without these files you will get error message when attempting to run SuperGame.exe on a windows machine.
The contents of your final distribution folder should look something like this:
- SDL2.dll
- OpenAL32.dll (note: this file is different in the 64 bit download despite still being called 'OpenAL32.dll')
- SuperGame.exe
- license.txt (note: the license requires that it be included in any further distribution)
- love.dll
- lua51.dll
- mpg123.dll
- msvcp120.dll
- msvcr120.dll
Creating a macOS Application
For official/commercial distribution (e.g., in the Mac App Store) skip to the next section, Official Distribution and the App Store.
Once you have your game prepared as .love file you can make your game available for macOS users by following the steps below (video tutorial available):
- Download and extract the Mac version of LÖVE from the LÖVE homepage
- Rename love.app to SuperGame.app
- Copy your SuperGame.love to SuperGame.app/Contents/Resources/ (right-click/Ctrl+click and pick 'Show Package Content' on OS X). This will result in the game running in fused mode.
- Modify SuperGame.app/Contents/Info.plist (see below for details)
- Zip the SuperGame.app folder (e.g. to SuperGame_osx.zip) and distribute it. Enable the -y flag of zip to keep the symlinks.
When modifying SuperGame.app/Contents/Info.plist make sure to change the string values of the following XML-tags:
- CFBundleIdentifier
- CFBundleName
and remove the section UTExportedTypeDeclarations which ensures that macOS does not associate all .love files with your app. Overall the changes should be something like this:
Original Info.plist | Modified Info.plist |
---|
Official Distribution and the App Store
Compiling Mac apps requires a Mac running macOS with XCode installed (you can install XCode from the app store).
- Download the love source code
- Download the required frameworks from here and place them in
/Library/Frameworks/
. - Open the Xcode project found at
platform/xcode/love.xcodeproj
. You will build thelove-macosx
target as described below. - In XCode, Modify the macOS icons in
Images.xcassets
- In XCode, Update the
love-macosx.plist
(see instructions above) - Add your .love file to the 'Copy Bundle Resources' Build Phase
- Follow Apple's guide for distributing Mac apps
Distribution for Linux
For Linux there is not yet a simple way to distribute your game. The general approach here is to point to the official LÖVE packages at https://www.love2d.org. Once the package is installed, the .love packages are usually automatically executed using the installed LÖVE package or using the command line:
Make sure to include a conf.lua
file with at least the LÖVE version used.
A common mistake is trying to fuse the love Linux binary with a love file:
Please keep in mind, while the binary `SuperGame` will run on your machine, and other Linux distros that have the same architecture and similar version libraries, there's a good chance that it will not run on many other Linux distros.
Linux
It has not been yet proven to work in all scenarios, but this a way of distributing your game for Linux.
- Download the appropriate Linux version of love (with file extension .tar.gz), either x86_64, or i686. Download Page
- Extract the .tar.gz. You can do this by either right clicking the file and pressing 'extract file', or extract it via the command line:
- Move your game.love file inside the extracted folder.
- Edit the file called love by replacing '$@' with '${LOVE_LAUNCHER_LOCATION}/game.love'
Debian
There is a policy for including LÖVE games in the Debian archive. It can be followed to create a package for a game even if it is not intended to include it in the archive.
AppImages
The AppImage format is a format for packaging applications in a way that allows them to run on a variety of different target systems (base operating systems, distributions) without further modification. The whole kit can be downloaded from here.
In order to package games using AppImage, the libraries and dependencies required by love need to be gathered, which can be done easily using CARE (available packaged in the Ubuntu repositories) by executing:
.Mac App Store For Windows
This program makes an archive, which contains the love executable and its dependencies and related files kept in the way of your system.Secondly, the game's .love file needs to be 'fused' by the means shown in the above section. Now, the files need to be placed in the following way in a new directory:
Finally, the directory needs to be converted into an AppImage, using AppImageAssistant available in the kit.More information can be found in the AppImage documentation.
Android
Compiling from source
First clone the android LÖVE project:
(optionally with --depth 1
to save download times)Then, download the Android SDK (API 30) and Android NDK (exactly version 21.3.6528147 or r21d).
Set these environment variables
ANDROID_HOME
to your Android SDK location.
Put the game (exactly named 'game.love') in the directory (project)/app/src/main/assets (create the directory if necessary).
Change the app launcher name (project)/app/src/embed/AndroidManifest.xml. Change the package name, version code, and version string in (project)/app/build.gradle
For Linux or macOS systems it may be necessary set the executable permission:
And finally to generate the APK, do:
The APK will be in (project)/app/build/outputs/apk/embed/release/app-embed-release-unsigned.apk
And if you need to generate AAB to be uploaded to Play Consode, do:
The AAB will be in (project)/app/build/outputs/bundle/embedRelease/app-embed-release.aab
For more information see the GitHub repository.
Using APKTool
This method is now deprecated as Play Store will mandate Android Application Bundle in 2021 and this method is subject to deletion! |
Please see Game Distribution/APKTool for more information.
iOS
Basic instructions for iOS (without fusing) are available at Getting_Started#iOS.
Due to Apple restrictions, fusing for iOS is only possible under macOS! |
To fuse your game into the LÖVE engine:
- Get iOS source code from love2d.org.
- Open platform/xcode/love.xcodeproj with Xcode.
- Select love-ios target (not love-macosx)
- Select Build Phases of the 'love-ios' target and add your 'game.love' file into Copy Bundle Resources.
- Build the project.
- Your game should appear on your iOS device as an app.
If you can't find the relevant XCode UI elements, you can refer to video tutorial on YouTube.
Distribution on the web
Publishing as a HTML5 or JavaScript game is possible thanks to TannerRogalsky/love.js. Threads for example are not supported though and playback of course depends on the browser.
A more modern fork of the above project is maintained at Davidobot/love.js and supports LÖVE v11.3.
Community Tools
There are a few tools developed by the community to help with game distribution.
- makelove, advanced multi-platform tool to fuse your game written in Python 3. Supports Windows and Linux with AppImage.
- love-release (forum), a Lua script that automates game distribution. Supports Windows, macOS, Debian, Linux, with much more features.
- boon (forum), a multi-platform, easy to use tool supporting Windows, macOS, Linux.
- Love Distrubution Pack[sic], a windows-only tool that can create .love files and exes.
- love-dist, a windows-only tool that can LuaC your files and create an exe.
- love-export, a fast and simple command-line tool that builds binaries for you. Supports Windows, MacOS, and Linux.
Other Languages
Dansk –Deutsch –English – Español –Français –Indonesia –Italiano –Lietuviškai –Magyar –Nederlands –Polski –Português –Română –Slovenský –Suomi –Svenska –Türkçe –Česky –Ελληνικά –Български –Русский –Српски –Українська –עברית –ไทย –日本語 –正體中文 –简体中文 –Tiếng Việt –한국어
More info
I've been trying out the world of Android Phones recently with a Google Pixel phone. Overall I have been surprised at how simple and effortless it has been to use my Google pixel phone alongside my Macintosh OS X. I was expecting it to be a lot harder to synchronise the Google phone to my Macintosh computer but if anything I have found it easier than my old iPhone.
Each individual application syncs its own data across the internet between the Google phone and OS X. Everything else gets synchronised by Google. I have found this approach surprising simple. It's just a matter of finding the best application for each job.
Here's a list of applications that I have found that will nicely share data between OSX, iOS and Android.
To-Do lists:Wunderlist (OSX/Android/iOS)
Notes: Notational Velocity(OSX) and Simplenote (Android/ iOS). also Evernote.
Calendars: Google calendar (Android/iOS) & Apple Calendar App (OSX)
Contacts: Contacts (Android), Apple Contacts (OSX) and sync them with ‘Contacts Sync For Google Gmail' (OS X). (Apple Contacts won't sync with gmail.)
Passwords: 1Password (OSX/Android/iOS)
Files: Dropbox (OSX/Android/iOS)
Team Collaboration: Slack (OSX/Android/iOS)
Databases: Airtable (web based)
Google takes care of everything else:
Email: Google Inbox (iOS/Android), Apple Mail (OS X) & sync via gmail.com account
Spreadsheets: Google Sheets (OSX/Android/iOS) or Microsoft Excel (Android, iOS and OSX)
Documents: Google Docs (OSX/Android/iOS) or Microsoft Word (Android, iOS and OSX)
Photos: Google Photos (Android), Apple ‘Photos' App (OS X) and sync them together with ‘Google Photos Backup'
Music: Google Play, iTunes and Google ‘Music Manager' which keeps them synced. (But note there is no way to sync playlists between iTunes and Google Play, just songs.)
You can read Excel and Word documents in both Android and iOS from dropbox, but you can't read Pages or Numbers documents in Android, so if you want to have true compatibility between your android devices and OS X you are going to have to move across to Excel and Word.
There are some OS X files you can't access from an Android device. Here's my list of incompatible applications that do not work in the Android world.
Pages
Numbers
Open Android On Mac
Keynote
Open Android Phone On Mac
Accordance (working on an Android App)
Filemaker Pro (but try Airtable – it's great!) Fake voice online.