LEd

LEd is an open-source 2D map editor,

with a strong focus on user-friendliness.


Why another editor?

LEd is based on my personal experience creating Dead Cells and making game jams.

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

Advanced level editing

Optional Haxe API fully supported in VScode

All features

  • Easy to use: modern UI with a strong focus on ease-of-use and quality-of-life features.
  • Universal and agnostic: compatible with all languages (not only Haxe) and game frameworks in the world
  • JSON: easy to parse file format for any game-engine out there (I promise it’s actually really easy). Haxe isn’t required.
  • 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!
  • 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.
  • External enums: enums can be imported and synced directly from Haxe source code files (HX file)!
  • HTML5: LEd is built around modern web standards.
  • Auto update: 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.
  • LEd loves Haxe: a powerful Haxe 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 MyLedProject(), you can do things like p.all_levels.MyIntroLevel.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 (see: How Autotiles work?)
  • World editor (issue)
  • 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)