Guest Piece: An Introduction to Level Director

Guest Piece: An Introduction to Level Director

Alan Gough has been involved in the software industry for over 25 years, mainly writing software for large insurance and investment management companies using technologies from Assembler to C#. Alan is also the founder of Retrofit Productions, the creator of Level Director, a third party tool which helps app developers create complex screens and levels with ease.

In today’s piece, Alan writes on Level Director tool and discusses how with a few clicks, the tool can take developers’ design ideas from paper to the mobile world.

Level Director logoThe inspiration behind Level Director was born from my first project using Corona SDK to recreate the much loved Hunchback game from the 80s. I was looking for a tool that would help me quickly create many levels in the game.

After a bit of research, I discovered that there were no tools out there on the Windows platform that could meet my basic requirements and sufficiently run on my old Android 2.2 device. Realizing this unmet need in the market and the frustration in not having a tool to help me create my game, Level Director was born.

From its humble beginnings, Level Director has now become a feature rich level authoring and asset management tool specifically designed to work with Lua and Corona SDK on the Windows platform.
It allows you to simply drag rectangles, circles, text and image assets onto the level with full support of Box2D physics and the exporter will do the rest and generate the Corona specific Lua code for you.

Screenshot from Level Director
This screenshot shows how image assets and text have been added across multiple layers to build a level.
Screenshot from Level Director
This screenshot shows the results of the level above, exported and running on a device.

To improve performance, it uses a pseudo engine system which basically consists of some utility modules to help render the objects to the screen which can also be used externally if you want to add new assets on the fly. Level Director also supports complex bodies and has its own shape and collision editor. Better yet, you can import them from Code’n’Web’s TexturePacker and PhysicsEditor tools. Level Director also supports Bezier curves, paths, joints, animation sequences and parallax scrolling.

Level Director’s user base is growing rapidly with more and more development teams such as Blerdo coming on board each day. There are also plenty of example projects to see the tool in action.

Like many of my other games, Hunchback has been placed on the backburner. Due to the success of Level Director, I’ve spent much of my time supporting users and beefing up the tool. You can download a free copy or purchase the full version of Level Director using this limited 20% off discount code ‘LD20OFF’. Please note, this code is good through October 31, 2013.

  • David
    Posted at 17:51h, 11 October

    Quick question: How is this different than Tiled? Tiled is mature, cross-platform and exports to LUA format. I’ve built an entire game engine on top of Tiled-exported files, and I’ve had no problems.

  • Noah (Chunky Apps)
    Posted at 19:39h, 11 October

    Arrgh… Need Mac support!

    • Andreas
      Posted at 00:42h, 14 October

      Hi Noah,

      don’t cry. 🙂

      We did all our games (e.g. “Freeze!”) with SpriteHelper/LevelHelper, a toolset created by Bogdan Vladu:

      They don’t work on Windows, but run on Max OSX 10.7+ and are very reliable and stable.

      LevelHelper supports all the stuff we need, including custom classes we connect to the physics objects to give them additional parameters etc., very helpful.

      The toolset generates LUA code, so you can e.g. implement a parallax scrolling landscape with lots of layers without having to code anything for yourself. But of course you can adapt the generated code to your special needs, I sometimes did that.


  • Thomas Vanden Abeele
    Posted at 02:50h, 12 October

    There is one big drawback to this type of software and that’s the sloooooow iterative process:

    creating the level –> putting the the level on the device –> building for device –> putting the test app on device –> testing the level –> start all over again to make minor changes…

    That’s why I built my own level editor for the platform game I’m making at the moment: in half a minute I’ve done a test, made the changes and re-tested, all on device and in game – and this allows me to design much, much better levels, in my opinion.

  • helios
    Posted at 02:54h, 12 October


    do you have tutorials using TILED??? coz i’ve long been looking for a Level Editor software and i hated the tutorial i found on youtube. . . he’s example sucks. .id like him to use something like a super mario character and makes it walk across the level.

    • David
      Posted at 08:25h, 13 October

      Sorry, I don’t have a tutorial. After I finish the engine, though, I plan on publishing something about it…

  • Christian Urquhart
    Posted at 08:41h, 12 October

    that’s funny…I wrote the official version of Hunchback in the 80’s

    • David
      Posted at 10:14h, 12 October

      Wow, it all comes full circle 🙂

  • Chevol
    Posted at 12:30h, 12 October

    ^^ WOW!

  • Chris Hodgkinson
    Posted at 13:12h, 12 October

    @Christian Urquhart – I LOVED hunchback on the Speccy. Weren’t you also responsible for DT’s Decathlon as well?

  • walter
    Posted at 10:21h, 13 October

    David>A tile editor is completly different, it saves data in a big array so that maps can be very large without having big files. Never use Level Editor for that! This is for placing some sprites/images visually anywhere on the screen.

  • Alan (Retrofit)
    Posted at 03:27h, 15 October

    Hey Christian, I was amazed to see your comment on here, in my 6502 programming days I looked up to you guys, awesome.

    With regards to the Tiled comparison questions, I started my remake of Hunchback using Tiled and Lime but found it very frustrating and performance was just too slow, even for such a simple game.
    Like Walter mentions it saves the data as a big array for the full size of the level, so even if a tile is empty it has to export it whereas Level Director only exports objects that are placed on the level, also the objects can vary in size as opposed to fixed tiles, and Tiled is limited to fixed size sprite sheets.
    The other advantage with LD is that it was designed with Corona, Box2D and LUA in mind from the start whereas Tiled is a generic tool, so in my opinion it is much quicker and more efficient to create a level for use with Corona.

    Thanks for you comments,