Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
25. January 2016

 

I am currently embarking on a rather massive “from scratch” beginners game programming series over on YouTube.  One thing that can make the process a hell of a lot smoother for a beginner or veteran alike is a good development environment.  As a result I’ve created this page, a summary of the best editors and IDEs for development in Lua using Love specifically.  This list contains both full blown IDEs as well as text editors that can be configured to work better with Lua or Love2D.  Of course the line between text editor and IDE can be extremely blurry at times, so the distinction doesn’t really matter.  Unless otherwise stated, all options on this list are cross platform and have a free version available.

 

ZeroBrane Studio

If in doubt, select this one.  It’s probably the easiest to configure and perhaps the most Lua and Love focused option out there.  With the least amount of effort you will get the most amount of functionality including code highlighting, autocompletion and most impressively, debugging support.

 

IntelliJ IDEA with Lua and Love2D plugins

Probably not the ideal choice for beginners, as the IDE itself is rather complicated and you have to configure two different plugins to get things up and running.  That said, this is the IDE I will be using for the tutorial series simply because it has an excellent presentation mode, making it good for video demonstrations.  With the plugins you get full autocompletion, syntax highlighting and can run your app directly from the IDE.  You can’t unfortunately debug.  I have done a video on configuring IntelliJ for Love development available here.

 

Sublime Text with the Love2D Package

Sublime Text is well named, it’s a great text editor, that through package support can get awfully close to full IDE capabilities.  It was my go to general purpose text editor for years and is still a very solid option.  With the Love2D package you get syntax highlighting, autocompletion and the ability to run your app directly in the editor.

 

Atom Editor with the Love-IDE collection of packages

Atom is another editor, very similar in scope to Sublime Text with probably even greater extensibility.  The Love-IDE extension brings together a collection of Lua and Love2d plugins to give Atom the ability to run from within the editor, autocompletion and syntax highlighting.  I personally find atom kind of slow though, especially to start up.  As I find myself loading and closing editors constantly, this becomes a more pronounced negative over time, at least to me.

 

Notepad++ with Autocompletion Plugin

Another free text editor that can be extended to support Lua and Love development.  Using the linked extension it is possible to get autocompletion, however the file is out of date and has only been updated up to Love 0.8.0.  There may be a more modern implementation somewhere.  As it stands, unless you are invested in Notepad++, I have trouble recommending it over the other great options in this list.

 

Eclipse and the LDT Plugin

The Eclipse IDE can also be extended to support Lua development using the LDT plugin.  I would rather swallow razor blades while juggling live hand grenades than use the Eclipse IDE, but hey... I’m trying not to let my bias show, so I added it to this list.  Some people love working in Eclipse, so this may be an option for you.  Warning though, Eclipse is extremely unfriendly to beginners, requiring a PHD in Obtuse UI design before mastering... oops, bias showing again. 

 

Decoda Lua IDE

This is the only option on this list I have no prior experience with.  It started life as an editor for Lua scripts for the game Natural Selection, then was released as a commercial Lua IDE, then finally was made free and open source.  Following these instructions it can be made to debug Love code.  Decoda is available on Windows only.

 

Visual Studio with BabeLua Plugin

Visual Studio is perhaps *the* IDE for Windows based developers and thanks to the somewhat recently released Community Editions, it is now available for free.  With the BabeLua plugin you get the full package, autocompletion, syntax highlighting and best of all, debugging.  For a beginner however, Visual Studio can be a bit daunting, not as bad as Eclipse, but probably comparable to IntelliJ in complexity.  Thanks to SiENcE for the heads up.

 

 

There are of course a few hundred other options including the ages old VIM and EMACS editor, or for those that like pain, you can use the text editor including with your OS such as Notepad or TextEdit, but you will certainly be leaving a lot of functionality on the table!  Did I miss a popular option?  If so, let me know!

Programming


23. January 2016

 

Corona Labs just released a Corona SDK auto complete package for the popular Atom text editor.

From the release:

We would like to announce the immediate availability of a code completion package for the Atom editor, which provides code completion as well as a description and links to the Corona Docs.

You have two options to install the package: through Atom’s package interface or from the command line.

If you choose the Atom’s package interface, open up the Preferences screen and click on Install.

In the search box, type corona and hit enter. The autocomplete-corona package should show as the first option. Click on the Install button. This will install the package and you can start using it immediately.

If you prefer, you can install it from the command line by executing:

apm install autocomplete-corona

You may also need to enable the language-lua package as well, to get the syntax highlighting.

demo

This is a no-frills package that uses Corona’s own docs to provide the code completion. Simply tab to complete and then tab between parameters to fill them out.

This tool complements our Corona Editor and Corona Composer GUI tools to help you make your apps easier.

Atom also supports building your project. There is not a pre-built Corona SDK build provider. However, you can configure your own by putting an extra file in the folder with your main.luanamed:

.atom-build.json

You must include this file in every project you want to build. The contents of the file will vary depending on if you are using a daily build or public build. And it will vary between OS X and Windows.

Here is an example OS X version for public releases:

{
  "cmd": "/Applications/CoronaSDK/Corona\\ Simulator.app/Contents/MacOS/Corona\\ Simulator",
  "args": ["main.lua"],
  "name": "Corona SDK",
  "cwd": "{PROJECT_PATH}",
  "sh": true
}

If you use daily builds change the first line to the right folder:

{
  "cmd": "/Applications/CoronaSDK-2811/Corona\\ Simulator.app/Contents/MacOS/Corona\\ Simulator",
  "args": ["main.lua"],
  "name": "Corona SDK",
  "cwd": "{PROJECT_PATH}",
  "sh": true
}

For Windows, you will need to provide the right path to your Corona SDK install folder.

{
  "cmd": "C:\Program Files (x86)\Corona Labs\Corona SDK\Corona\\ Simulator.exe",
  "args": ["main.lua"],
  "name": "Corona SDK",
  "cwd": "{PROJECT_PATH}",
  "sh": true
}

You must also install the build package to use this. Click here to learn more about these build scripts.

If you are an Atom fan, you will now be more empowered.

GameDev News


16. January 2016

 

Corona Labs have released a new plugin for Corona, their Lua based mobile game SDK.  The plugin adds support for Facebook Audience Network, which is basically Facebook’s ad network.

From the plugin announcement:

Corona Labs is pleased to announce immediate availability of the Facebook Audience Networkplugin. This new plugin brings Facebook Ads to your Corona-based apps with the same insights and demographic targeting you get with ads in Facebook.

Using familiar API calls like .load() and .show(), you can easily implement the Facebook Audience Network into your apps and begin monetizing with the power of Facebook.

To get started, visit the Getting Started with the Audience Network page which will guide you through setting up your existing Facebook-enabled app or setting up a new Facebook app.

 

Be sure to note:

For monetization through the Facebook Audience Network plugin, Corona Labs takes a 20% revenue share in the form of a ratio model. No special action is needed during implementation — simply integrate the plugin and 1 out of every 5 ads will be served on a Corona Labs placement ID.

GameDev News


12. January 2016

 

Corona Labs, the makers of the popular Lua based mobile game engine, just release version 1.6 of Corona Editor.  Corona Editor is a light weight IDE built as a plugin for Sublime Text that enables debugging, code snippets, code completion and more.

Details of the 1.6 release from the blog announcement:

Corona Labs is happy to announce the availability of Corona Editor 1.6. This is an update for the add-on package for Sublime Text 2 and Sublime Text 3 that provides code completion, syntax highlighting, documentation, and debugging to Corona developers.

The release of 1.6 includes the following updates:

Debugger improvements
  • Fixed an issue with a hanging after pressing Shift+F10.
  • Fixed a bug with spaces in project pathnames.
  • Current status is now displayed in the “Console” pane.
  • The “Console” output is now cleaner.
  • Generally improved reliability.
Corona Editor Project improvements
  • On OS X, Corona EditorRun Project now uses the most recent daily build in the/Applications folder by default. It will fall back to the public build if there are no daily builds.
  • Removed project “build system.” The menu command Corona EditorRun Project or the Cmd+F10(Mac) Win+F10(Windows, maybe mapped to FN+F10) key sequence is much more reliable.
  • Added Clear Build Panel command to main menu and context menu.
Editing improvements
  • Fixed indentation of elseif blocks.
  • Latest code completions are up to date to daily build 2016.2803.

Learn more about Corona Editor.

GameDev News


22. December 2015

 

LÖVE, the popular Lua based open source game engine, just released version 0.10.  This is excellent news for me as I can now use the newest release in my upcoming complete beginners series.

 

So, what’s so special about this release?  Well the biggest feature has to be iOS and Android support, which I think you will agree is pretty big. 

 

That said, there are tons of new features in this release:

Changes from 0.9.2

Additions
Changed APIs
Renamed APIs
Removals
Bugfixes
Performance improvements
Other changes

GameDev News


AppGameKit Studio

See More Tutorials on DevGa.me!

Month List