An open-source 2D level editor from the creator of Dead Cells,
with a strong focus on user-friendliness

Why another level editor?

LDtk (Level Designer Toolkit) is a 2D map editor based on my personal experience creating Dead Cells and making game jams.

My goal is to provide a level editor that has all the important core features and to do them right, with a modern user interface/experience.

LDtk main interface

Supported languages (learn more)

All features

Easy to use

Modern UI with a strong focus on ease-of-use and quality-of-life features.

Universal and agnostic

As long as your favorite game engine can read JSON, you can read data created in LDtk. The file format is simple and well documented 🙂

Customizable layers

Integer grid layers, Tile layers and Entity layers support

Auto-layers

Paint your collision map and see the grass, textures and all the small details being drawn automatically!

World editor

Just press a single key to zoom out to world mode! Pick a layout among “grid-vania“, “linear“, or “free” and reorganize all your levels using plain old simple drag-n-drop.

Entities

Fully customizable Entity with custom properties (ex: you can have a “Mob” entity, with a “hitPoints” field, which is an Integer limited to [0,10] bounds).

Enums

You can define an enumeration (ex: an “ItemType” enum with “Money“, “Ammo“, “Gun” values) and use this enum in your entity custom fields.

Enums can even be imported and synced directly from Haxe source code files!

HTML5 and WebGL

LDtk is built around modern web standards.

Auto-updated

You get notified as soon as a stable update is released and it’s up to you to install it when you’re ready, with a single click.

LDtk loves Haxe

If you’re a Haxe dev, a powerful open-source API which gives you access to fully typed values from your levels. It avoids mistakes like mistyping, renaming or removals: you see errors during compilation, not at runtime. For example, having:

var p = new MyLdtkProject();

you can do things like:

var level = p.all_levels.MyIntroLevel;
var hp = level.all_enemies[0].f_hitPoints;

Roadmap

The following features are planned in a quite short term, in no particular order. See official issue tracker fore more.

  • Auto-tiling (like RPG Maker)
  • Freely positioned tiles (issue)
  • Parallax layers (issue)
  • References in entity fields (ie. having a Button entity that refers to another entity, like a Door) (issue)