Corona SVG Level Builder 1.3 features and examples!


The massive Corona SVG Level Builder 1.3 update has been finally released! It has dozens of new features and it finally comes with examples.

Now you can edit even more of your game properties direct into Inkscape. You will edit Lua source code only to add and take care of your game logic! Let’s take a look at the new features and at the examples!

Resolution Independence and Dynamic Scaling

Draw your levels just once and it will work for all resolutions: iPhone, iPhone Retina, iPad, Android Phones and Android Tablets.
Corona SVG Level Builder - Resolution Independent Levels
It comes with an example showing the resolution independence, so it is easy to achieve it. You just need to worry on exporting the different graphical assets on different sizes, other than that, Corona SVG Level Builder does all the job for you.


Corona SVG Level Builder now loads and take care of spritesheets created with TexturePacker.

Assigning SpriteTo create levels that use spritesheets you just have to create them with TexturePacker and add one variable with the spritesheet name when you load your levels:

local level = svg:new("levelFile", {spriteGrabber = "game"})

You can have levels with:

  • Single spritesheet.
  • Multiple spritesheets.
  • Externally loaded spritesheets.

Assigning a game object with a sprite is as simple as assigning it with an image: the step is the same! Just add an image attribute with the sprite name.


Corona SVG Level Builder AnimationsTo add more sauce to the spritesheet support, you can have animated sprites and objects as simple as having static objects. By simple assigning the frame names, giving a pose name and frame positions to a game object, you can animate, change poses and pause it in your code, with methods provided by Corona SVG Level Builder (from SpriteGrabber)!

-- Grab the body with the ID you set
local monkeyNpc = level.bodies.monkeyNpc
-- Call playClip with the pose name

Game Materials

This is one of the coolest additions. You can now define your materials (game objects properties) in an external file and they will persist for all your levels.

As an example let’s consider a game where you have a zombie and a type of block to construct the levels. You need to make 100 levels in Inkscape. If you had to define your block properties along 100 levels, this would be too time consuming. And what if you had to update properties (like friction) from this block? It would require you to manually edit 100 levels.

With game materials, you define and update only once, and the attributes and properties will reflect in all levels for bodies that use the materials name!

local gameMaterials = {
    brick = {
        type = "static",
        image = "brickImageName",
        width = 45,
        height = 20,
        friction = 0.5,
        bounce = 0

    zombie = {
        type = "dynamic",
        image = "zombie",
        frames = "idle:1:1:100:0; walking:2:5:200:0",
        width = 40,
        height = 100,

        custom = {
            health = 120,

            lootRate = {
                coin = 10,
                ammo = 20

Custom Attributes

Consider an example game where you add coins, and then you want to set the value of the coin. The “value” can be set as a custom attribute, additionally to all attributes you already add. Other examples could be the health of an enemy type, the score for a breakable block, etc.

That means: you are tweaking and editing game values in Inkscape. You don’t need to edit a line of Lua code!

You can also now set Custom Level Attributes, which allow you to set level specific attributes you can read in you game code. Examples of level attributes are the OpenFeint Leaderboard ID, Level Speed, Highscore ranks (10.000 = 1 star, 12.000 = 2 stars), whenever you need on a higher level just after loading the level, edited all in Inkscape.

Multiple Named Layers, z-ordering and object filtering

Now you can have multiple named layers, which means you can group common objects in your Inkscape drawing and treat them on your code accordingly to the layer they are in.

Also the order they are placed in Inkscape is the order that your game objects will be placed (z-ordering).

Want to put curtains above all your elements? Just move the layer with curtains above the other layers and all your game objects will be covered! I can’t imagine doing that manually in a level with 100+ elements!

Drawing Vectors and Primitives

You don’t need to always assign a sprite or image to your game objects. You now can have them in your game in the same way you drew them in Inkscape: as a rectangle, ellipse or path! Corona SVG Level Builder will even draw them with the fill color, stroke color and stroke size you choose.

Massive Documentation

Well, this isn’t new: the documentation has always been massive. But now it is even bigger! With all the new features it has grown up and got updated. You can check it here:


Nothing better than learning by practice. Now Corona SVG Level Builder comes with source codes showing each one of its features. Some examples even add some more: what about an example with camera and level scrolling? You have it!

Let’s see a fast video showing the examples in action:

Platformer Game Kit

I’m working now on the Platformer Game Kit! Well, I think the name says it all, right? Along all the dozens and dozens of the Corona SVG Level Builder features, the Platformer Game Kit will be killer. You won’t have anything similar out there.

With the 1.3 update you can already make practically any type of level and game with the Corona SVG Level Builder, while editing your game values and properties all in Inkscape.

But, that is not enough for me: the Platformer Game Kit not only will contain the main features of the classic platformers, but will also come with menus, etc, that means: the source code for a complete game!

What now?

If you don’t have it, what are you waiting for? Go buy it now and save dozens if not hundred hours of development! Or you may consider checking all the features first? Here they are:!


The 1.3 update uses Free Art Packs made by Vicki Wenderlich – All credits go to Vicki Wenderlich.

Leave one


  1. Hey Alfred the Platformer Game Kit will be released when ?
    BTW please add my new e-mail to Corona SVG Level Builder update list, thanks.

    • Alfred R. Baudisch

       /  December 21, 2011


      It is planned by mid January. As for the Corona SVG Level Builder e-mail list, if you bought it, you are already in :)


  1. Introduction to Corona SVG Level Builder – Making a Save the Totem game | Karnak Games
  2. Corona SVG Level Builder 1.5: iPad 3 support, multiple SVGs, downloadable content, new examples and more! | Karnak Games

Leave a Reply